-330 (-8.35 % of base) - System.Text.Json.JsonDocument:TryParseValue(byref,byref,ubyte,ubyte):ubyte
; Assembly listing for method System.Text.Json.JsonDocument:TryParseValue(byref,byref,ubyte,ubyte):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 92 single block inlinees; 34 inlinees without PGO data
; Final local variable assignments
;
-; V00 arg0 [V00,T00] ( 53, 36.50) byref -> [rbp-0x2A0] EH-live single-def
+; V00 arg0 [V00,T00] ( 53, 36.50) byref -> [rbp-0x2A8] EH-live single-def
; V01 arg1 [V01,T04] ( 8, 5 ) byref -> rbx single-def
; V02 arg2 [V02,T06] ( 5, 3.50) ubyte -> r15 single-def
; V03 arg3 [V03,T09] ( 4, 3 ) ubyte -> r14 single-def
; V04 loc0 [V04 ] ( 4, 3 ) struct (56) [rbp-0x60] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Text.Json.JsonReaderState>
; V05 loc1 [V05,T34] ( 5, 2.50) struct (192) [rbp-0x120] do-not-enreg[SH] must-init EH-live <System.Text.Json.Utf8JsonReader>
;* V06 loc2 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
; V07 loc3 [V07 ] ( 17, 9 ) struct (24) [rbp-0x138] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V08 loc4 [V08 ] ( 0, 0 ) int -> zero-ref
; V09 loc5 [V09,T39] ( 3, 2.50) ubyte -> rdi
;* V10 loc6 [V10 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <System.ReadOnlySpan`1[ubyte]>
; V11 loc7 [V11,T35] ( 5, 2.50) ubyte -> rax
;* V12 loc8 [V12 ] ( 0, 0 ) ubyte -> zero-ref
; V13 loc9 [V13,T41] ( 4, 2 ) long -> [rbp-0x140] spill-single-def
; V14 loc10 [V14,T72] ( 3, 1.50) long -> r15
; V15 loc11 [V15 ] ( 6, 3 ) struct (24) [rbp-0x158] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V16 loc12 [V16 ] ( 6, 3 ) struct (24) [rbp-0x170] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V17 loc13 [V17,T73] ( 3, 1.50) int -> r12
;* V18 loc14 [V18 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
; V19 loc15 [V19,T74] ( 3, 1.50) long -> rcx
;* V20 loc16 [V20 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V21 loc17 [V21,T142] ( 2, 0 ) ubyte -> rdx
-; V22 loc18 [V22,T16] ( 9, 3.50) ref -> [rbp-0x2A8] class-hnd EH-live spill-single-def <ubyte[]>
+; V22 loc18 [V22,T16] ( 9, 3.50) ref -> [rbp-0x2B0] class-hnd EH-live spill-single-def <ubyte[]>
;* V23 loc19 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Span`1[ubyte]>
; V24 loc20 [V24,T32] ( 5, 2.50) ref -> rax class-hnd <ubyte[]>
;# V25 OutArgs [V25 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V26 tmp1 [V26 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Text.Json.JsonReaderOptions>
; V27 tmp2 [V27,T11] ( 9, 4.50) int -> [rbp-0x174]
;* V28 tmp3 [V28 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlyMemory`1[ubyte]>
;* V29 tmp4 [V29 ] ( 0, 0 ) struct ( 8) zero-ref "impAppendStmt" <System.Text.Json.JsonReaderOptions>
;* V30 tmp5 [V30 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Memory`1[ubyte]>
;* V31 tmp6 [V31 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlyMemory`1[ubyte]>
;* V32 tmp7 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Text.Json.JsonReaderOptions>
;* V33 tmp8 [V33 ] ( 0, 0 ) ref -> zero-ref class-hnd "impSpillSpecialSideEff" <System.Object>
;* V34 tmp9 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd "impSpillSpecialSideEff" <System.Object>
;* V35 tmp10 [V35 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Text.Json.JsonReaderOptions>
; V36 tmp11 [V36,T137] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
-; V37 tmp12 [V37,T75] ( 2, 1 ) ubyte -> rdx "Inline return value spill temp"
+; V37 tmp12 [V37,T75] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
; V38 tmp13 [V38,T119] ( 2, 1 ) struct (192) [rbp-0x238] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
-; V39 tmp14 [V39,T76] ( 3, 1.50) ubyte -> rdx "Inline stloc first use temp"
+; V39 tmp14 [V39,T76] ( 3, 1.50) ubyte -> [rbp-0x23C] spill-single-def "Inline stloc first use temp"
; V40 tmp15 [V40,T77] ( 3, 1.50) ubyte -> rcx "Inline stloc first use temp"
;* V41 tmp16 [V41,T120] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V42 tmp17 [V42,T12] ( 2, 4.50) int -> r15 "Inline stloc first use temp"
;* V43 tmp18 [V43 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V44 tmp19 [V44 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V45 tmp20 [V45 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V46 tmp21 [V46,T78] ( 3, 1.50) int -> r15 "Inline stloc first use temp"
; V47 tmp22 [V47,T79] ( 3, 1.50) ubyte -> rdi "Inline stloc first use temp"
;* V48 tmp23 [V48,T121] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V49 tmp24 [V49 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V50 tmp25 [V50,T01] ( 3, 10 ) int -> rsi "Inline stloc first use temp"
; V51 tmp26 [V51,T02] ( 3, 10 ) ubyte -> rax "Inline stloc first use temp"
;* V52 tmp27 [V52,T15] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V53 tmp28 [V53 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V54 tmp29 [V54,T80] ( 3, 1.50) int -> rax "Inline stloc first use temp"
-; V55 tmp30 [V55,T81] ( 3, 1.50) ubyte -> rdx "Inline stloc first use temp"
+; V55 tmp30 [V55,T81] ( 3, 1.50) ubyte -> r8 "Inline stloc first use temp"
;* V56 tmp31 [V56,T122] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V57 tmp32 [V57,T82] ( 3, 1.50) long -> rsi "Inline return value spill temp"
; V58 tmp33 [V58,T57] ( 3, 1.50) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V59 tmp34 [V59,T58] ( 3, 1.50) ref -> [rbp-0x2B0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
-; V60 tmp35 [V60,T83] ( 3, 1.50) int -> [rbp-0x23C] spill-single-def "Inline stloc first use temp"
-; V61 tmp36 [V61,T84] ( 3, 1.50) int -> [rbp-0x240] spill-single-def "Inline stloc first use temp"
-; V62 tmp37 [V62,T107] ( 2, 1 ) ref -> [rbp-0x2B8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V59 tmp34 [V59,T58] ( 3, 1.50) ref -> [rbp-0x2B8] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
+; V60 tmp35 [V60,T83] ( 3, 1.50) int -> [rbp-0x240] spill-single-def "Inline stloc first use temp"
+; V61 tmp36 [V61,T84] ( 3, 1.50) int -> [rbp-0x244] spill-single-def "Inline stloc first use temp"
+; V62 tmp37 [V62,T107] ( 2, 1 ) ref -> [rbp-0x2C0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V63 tmp38 [V63 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V64 tmp39 [V64 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V65 tmp40 [V65,T46] ( 2, 2 ) int -> rdx "Inlining Arg"
; V66 tmp41 [V66,T47] ( 2, 2 ) int -> r8 "Inlining Arg"
;* V67 tmp42 [V67 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V68 tmp43 [V68 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
; V69 tmp44 [V69,T07] ( 5, 5 ) byref -> rsi single-def "Inlining Arg"
; V70 tmp45 [V70,T85] ( 3, 1.50) long -> registers "Inline return value spill temp"
; V71 tmp46 [V71,T59] ( 3, 1.50) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.Object>
; V72 tmp47 [V72,T60] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V73 tmp48 [V73,T86] ( 3, 1.50) int -> r12 "Inline stloc first use temp"
-; V74 tmp49 [V74,T87] ( 3, 1.50) int -> [rbp-0x244] spill-single-def "Inline stloc first use temp"
-; V75 tmp50 [V75,T108] ( 2, 1 ) ref -> [rbp-0x2C0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V74 tmp49 [V74,T87] ( 3, 1.50) int -> [rbp-0x248] spill-single-def "Inline stloc first use temp"
+; V75 tmp50 [V75,T108] ( 2, 1 ) ref -> [rbp-0x2C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V76 tmp51 [V76 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V77 tmp52 [V77 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V78 tmp53 [V78 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V79 tmp54 [V79 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V80 tmp55 [V80,T27] ( 3, 3 ) int -> rax "Inlining Arg"
; V81 tmp56 [V81,T28] ( 3, 3 ) int -> r15 "Inlining Arg"
;* V82 tmp57 [V82 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V83 tmp58 [V83 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V84 tmp59 [V84,T88] ( 3, 1.50) long -> registers "Inline return value spill temp"
; V85 tmp60 [V85,T61] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V86 tmp61 [V86,T62] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V87 tmp62 [V87,T89] ( 3, 1.50) int -> [rbp-0x248] spill-single-def "Inline stloc first use temp"
-; V88 tmp63 [V88,T90] ( 3, 1.50) int -> [rbp-0x24C] spill-single-def "Inline stloc first use temp"
-; V89 tmp64 [V89,T109] ( 2, 1 ) ref -> [rbp-0x2C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V87 tmp62 [V87,T89] ( 3, 1.50) int -> [rbp-0x24C] spill-single-def "Inline stloc first use temp"
+; V88 tmp63 [V88,T90] ( 3, 1.50) int -> [rbp-0x250] spill-single-def "Inline stloc first use temp"
+; V89 tmp64 [V89,T109] ( 2, 1 ) ref -> [rbp-0x2D0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V90 tmp65 [V90 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V91 tmp66 [V91 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V92 tmp67 [V92,T48] ( 2, 2 ) int -> rax "Inlining Arg"
; V93 tmp68 [V93,T49] ( 2, 2 ) int -> rcx "Inlining Arg"
;* V94 tmp69 [V94 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V95 tmp70 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
; V96 tmp71 [V96,T08] ( 5, 5 ) byref -> rdi single-def "Inlining Arg"
; V97 tmp72 [V97,T91] ( 3, 1.50) long -> registers "Inline return value spill temp"
; V98 tmp73 [V98,T63] ( 3, 1.50) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Object>
; V99 tmp74 [V99,T64] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V100 tmp75 [V100,T92] ( 3, 1.50) int -> r15 "Inline stloc first use temp"
-; V101 tmp76 [V101,T93] ( 3, 1.50) int -> [rbp-0x250] spill-single-def "Inline stloc first use temp"
-; V102 tmp77 [V102,T110] ( 2, 1 ) ref -> [rbp-0x2D0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V101 tmp76 [V101,T93] ( 3, 1.50) int -> [rbp-0x254] spill-single-def "Inline stloc first use temp"
+; V102 tmp77 [V102,T110] ( 2, 1 ) ref -> [rbp-0x2D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V103 tmp78 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V104 tmp79 [V104 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V105 tmp80 [V105 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V106 tmp81 [V106 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V107 tmp82 [V107,T29] ( 3, 3 ) int -> rdi "Inlining Arg"
;* V108 tmp83 [V108 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V109 tmp84 [V109 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V110 tmp85 [V110,T94] ( 3, 1.50) long -> rcx "Inline return value spill temp"
;* V111 tmp86 [V111 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Object>
;* V112 tmp87 [V112 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V113 tmp88 [V113,T95] ( 3, 1.50) int -> [rbp-0x254] spill-single-def "Inline stloc first use temp"
-; V114 tmp89 [V114,T96] ( 3, 1.50) int -> [rbp-0x258] spill-single-def "Inline stloc first use temp"
-; V115 tmp90 [V115,T111] ( 2, 1 ) ref -> [rbp-0x2D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V113 tmp88 [V113,T95] ( 3, 1.50) int -> [rbp-0x258] spill-single-def "Inline stloc first use temp"
+; V114 tmp89 [V114,T96] ( 3, 1.50) int -> [rbp-0x25C] spill-single-def "Inline stloc first use temp"
+; V115 tmp90 [V115,T111] ( 2, 1 ) ref -> [rbp-0x2E0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V116 tmp91 [V116 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V117 tmp92 [V117 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V118 tmp93 [V118 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V119 tmp94 [V119 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V120 tmp95 [V120,T97] ( 3, 1.50) long -> rdi "Inline return value spill temp"
; V121 tmp96 [V121,T65] ( 3, 1.50) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V122 tmp97 [V122,T66] ( 3, 1.50) ref -> [rbp-0x2E0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
-; V123 tmp98 [V123,T98] ( 3, 1.50) int -> [rbp-0x25C] spill-single-def "Inline stloc first use temp"
-; V124 tmp99 [V124,T99] ( 3, 1.50) int -> [rbp-0x260] spill-single-def "Inline stloc first use temp"
-; V125 tmp100 [V125,T112] ( 2, 1 ) ref -> [rbp-0x2E8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V122 tmp97 [V122,T66] ( 3, 1.50) ref -> [rbp-0x2E8] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
+; V123 tmp98 [V123,T98] ( 3, 1.50) int -> [rbp-0x260] spill-single-def "Inline stloc first use temp"
+; V124 tmp99 [V124,T99] ( 3, 1.50) int -> [rbp-0x264] spill-single-def "Inline stloc first use temp"
+; V125 tmp100 [V125,T112] ( 2, 1 ) ref -> [rbp-0x2F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V126 tmp101 [V126 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V127 tmp102 [V127 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V128 tmp103 [V128,T50] ( 2, 2 ) int -> rcx "Inlining Arg"
; V129 tmp104 [V129,T51] ( 2, 2 ) int -> rdx "Inlining Arg"
;* V130 tmp105 [V130 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V131 tmp106 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V132 tmp107 [V132 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
;* V133 tmp108 [V133 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
-; V134 tmp109 [V134 ] ( 16, 8 ) struct (16) [rbp-0x270] do-not-enreg[SBR] multireg-ret must-init "Inline return value spill temp" <System.ReadOnlyMemory`1[ubyte]>
+; V134 tmp109 [V134 ] ( 16, 8 ) struct (16) [rbp-0x278] do-not-enreg[SBR] multireg-ret must-init "Inline return value spill temp" <System.ReadOnlyMemory`1[ubyte]>
; V135 tmp110 [V135,T33] ( 5, 2.50) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V136 tmp111 [V136,T36] ( 5, 2.50) int -> r12 "Inline stloc first use temp"
; V137 tmp112 [V137,T100] ( 3, 1.50) int -> r13 "Inline stloc first use temp"
; V138 tmp113 [V138,T123] ( 2, 1 ) ubyte -> rdx "Inline stloc first use temp"
;* V139 tmp114 [V139 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SR] multireg-ret "Return value temp for multireg return" <System.ReadOnlyMemory`1[ubyte]>
;* V140 tmp115 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
;* V141 tmp116 [V141 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlyMemory`1[ubyte]>
;* V142 tmp117 [V142 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V143 tmp118 [V143 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V144 tmp119 [V144 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
;* V145 tmp120 [V145 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V146 tmp121 [V146 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V147 tmp122 [V147,T30] ( 3, 3 ) int -> r13 "Inlining Arg"
;* V148 tmp123 [V148 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V149 tmp124 [V149 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
; V150 tmp125 [V150,T52] ( 2, 2 ) int -> rsi "Inlining Arg"
;* V151 tmp126 [V151 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V152 tmp127 [V152,T19] ( 6, 3 ) byref -> rsi "Inline stloc first use temp"
; V153 tmp128 [V153,T13] ( 8, 4 ) int -> r13 "Inline stloc first use temp"
;* V154 tmp129 [V154 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Object>
;* V155 tmp130 [V155 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V156 tmp131 [V156 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Buffers.MemoryManager`1[ubyte]>
;* V157 tmp132 [V157 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V158 tmp133 [V158 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V159 tmp134 [V159,T101] ( 3, 1.50) long -> rdi "Inline stloc first use temp"
;* V160 tmp135 [V160 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V161 tmp136 [V161 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "updating class info" <ubyte[]>
;* V162 tmp137 [V162 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
; V163 tmp138 [V163,T43] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
;* V164 tmp139 [V164 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V165 tmp140 [V165 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V166 tmp141 [V166 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
;* V167 tmp142 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
; V168 tmp143 [V168,T53] ( 2, 2 ) long -> rdx "Inlining Arg"
;* V169 tmp144 [V169 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V170 tmp145 [V170 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
;* V171 tmp146 [V171 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
; V172 tmp147 [V172,T54] ( 2, 2 ) long -> rdx "Inlining Arg"
-; V173 tmp148 [V173 ] ( 8, 8 ) struct (16) [rbp-0x280] do-not-enreg[SFA] multireg-arg must-init ld-addr-op "NewObj constructor temp" <System.Memory`1[ubyte]>
+; V173 tmp148 [V173 ] ( 8, 8 ) struct (16) [rbp-0x288] do-not-enreg[SFA] multireg-arg must-init ld-addr-op "NewObj constructor temp" <System.Memory`1[ubyte]>
;* V174 tmp149 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Memory`1[ubyte]>
; V175 tmp150 [V175,T113] ( 2, 1 ) ref -> rax class-hnd single-def "Inline return value spill temp" <ubyte[]>
; V176 tmp151 [V176,T67] ( 3, 1.50) ref -> r14 class-hnd exact single-def "Inline stloc first use temp" <ubyte[]>
; V177 tmp152 [V177,T44] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
;* V178 tmp153 [V178 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
; V179 tmp154 [V179,T55] ( 2, 2 ) long -> rdx "Inlining Arg"
-; V180 tmp155 [V180 ] ( 8, 8 ) struct (16) [rbp-0x290] do-not-enreg[SFA] multireg-arg must-init ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
+; V180 tmp155 [V180 ] ( 8, 8 ) struct (16) [rbp-0x298] do-not-enreg[SFA] multireg-arg must-init ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
; V181 tmp156 [V181,T18] ( 6, 3.50) byref -> r13 "field V06._reference (fldOffset=0x0)" P-INDEP
; V182 tmp157 [V182,T05] ( 12, 6.50) int -> r12 "field V06._length (fldOffset=0x8)" P-INDEP
; V183 tmp158 [V183 ] ( 10, 5.50) ref -> [rbp-0x138] do-not-enreg[X] addr-exposed "field V07._startObject (fldOffset=0x0)" P-DEP
; V184 tmp159 [V184 ] ( 10, 5.50) ref -> [rbp-0x130] do-not-enreg[X] addr-exposed "field V07._endObject (fldOffset=0x8)" P-DEP
; V185 tmp160 [V185 ] ( 9, 5 ) int -> [rbp-0x128] do-not-enreg[X] addr-exposed "field V07._startInteger (fldOffset=0x10)" P-DEP
; V186 tmp161 [V186 ] ( 9, 5 ) int -> [rbp-0x124] do-not-enreg[X] addr-exposed "field V07._endInteger (fldOffset=0x14)" P-DEP
; V187 tmp162 [V187,T136] ( 8, 0 ) byref -> rcx "field V10._reference (fldOffset=0x0)" P-INDEP
; V188 tmp163 [V188,T40] ( 6, 2 ) int -> registers "field V10._length (fldOffset=0x8)" P-INDEP
; V189 tmp164 [V189 ] ( 3, 1.50) ref -> [rbp-0x158] do-not-enreg[X] addr-exposed "field V15._startObject (fldOffset=0x0)" P-DEP
; V190 tmp165 [V190 ] ( 3, 1.50) ref -> [rbp-0x150] do-not-enreg[X] addr-exposed "field V15._endObject (fldOffset=0x8)" P-DEP
; V191 tmp166 [V191 ] ( 3, 1.50) int -> [rbp-0x148] do-not-enreg[X] addr-exposed "field V15._startInteger (fldOffset=0x10)" P-DEP
; V192 tmp167 [V192 ] ( 3, 1.50) int -> [rbp-0x144] do-not-enreg[X] addr-exposed "field V15._endInteger (fldOffset=0x14)" P-DEP
; V193 tmp168 [V193 ] ( 3, 1.50) ref -> [rbp-0x170] do-not-enreg[X] addr-exposed "field V16._startObject (fldOffset=0x0)" P-DEP
; V194 tmp169 [V194 ] ( 3, 1.50) ref -> [rbp-0x168] do-not-enreg[X] addr-exposed "field V16._endObject (fldOffset=0x8)" P-DEP
; V195 tmp170 [V195 ] ( 3, 1.50) int -> [rbp-0x160] do-not-enreg[X] addr-exposed "field V16._startInteger (fldOffset=0x10)" P-DEP
; V196 tmp171 [V196 ] ( 3, 1.50) int -> [rbp-0x15C] do-not-enreg[X] addr-exposed "field V16._endInteger (fldOffset=0x14)" P-DEP
;* V197 tmp172 [V197 ] ( 0, 0 ) byref -> zero-ref single-def "field V18._reference (fldOffset=0x0)" P-INDEP
;* V198 tmp173 [V198 ] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP
; V199 tmp174 [V199,T68] ( 3, 1.50) ref -> rsi single-def "field V20._startObject (fldOffset=0x0)" P-INDEP
-; V200 tmp175 [V200,T69] ( 3, 1.50) ref -> [rbp-0x2F0] spill-single-def "field V20._endObject (fldOffset=0x8)" P-INDEP
+; V200 tmp175 [V200,T69] ( 3, 1.50) ref -> [rbp-0x2F8] spill-single-def "field V20._endObject (fldOffset=0x8)" P-INDEP
; V201 tmp176 [V201,T124] ( 2, 1 ) int -> rcx "field V20._startInteger (fldOffset=0x10)" P-INDEP
; V202 tmp177 [V202,T125] ( 2, 1 ) int -> rdx "field V20._endInteger (fldOffset=0x14)" P-INDEP
-; V203 tmp178 [V203,T139] ( 2, 0 ) byref -> [rbp-0x2F8] EH-live single-def "field V23._reference (fldOffset=0x0)" P-INDEP
-; V204 tmp179 [V204,T135] ( 2, 0.50) int -> [rbp-0x294] do-not-enreg[Z] EH-live "field V23._length (fldOffset=0x8)" P-INDEP
+; V203 tmp178 [V203,T139] ( 2, 0 ) byref -> [rbp-0x300] EH-live single-def "field V23._reference (fldOffset=0x0)" P-INDEP
+; V204 tmp179 [V204,T135] ( 2, 0.50) int -> [rbp-0x29C] do-not-enreg[Z] EH-live "field V23._length (fldOffset=0x8)" P-INDEP
;* V205 tmp180 [V205 ] ( 0, 0 ) int -> zero-ref "field V26._maxDepth (fldOffset=0x0)" P-INDEP
;* V206 tmp181 [V206 ] ( 0, 0 ) ubyte -> zero-ref "field V26._commentHandling (fldOffset=0x4)" P-INDEP
;* V207 tmp182 [V207 ] ( 0, 0 ) ubyte -> zero-ref "field V26.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V208 tmp183 [V208 ] ( 0, 0 ) ref -> zero-ref "field V28._object (fldOffset=0x0)" P-INDEP
;* V209 tmp184 [V209 ] ( 0, 0 ) int -> zero-ref "field V28._index (fldOffset=0x8)" P-INDEP
;* V210 tmp185 [V210 ] ( 0, 0 ) int -> zero-ref "field V28._length (fldOffset=0xc)" P-INDEP
;* V211 tmp186 [V211 ] ( 0, 0 ) int -> zero-ref "field V29._maxDepth (fldOffset=0x0)" P-INDEP
;* V212 tmp187 [V212 ] ( 0, 0 ) ubyte -> zero-ref "field V29._commentHandling (fldOffset=0x4)" P-INDEP
;* V213 tmp188 [V213 ] ( 0, 0 ) ubyte -> zero-ref "field V29.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V214 tmp189 [V214 ] ( 0, 0 ) ref -> zero-ref "field V30._object (fldOffset=0x0)" P-INDEP
;* V215 tmp190 [V215 ] ( 0, 0 ) int -> zero-ref "field V30._index (fldOffset=0x8)" P-INDEP
;* V216 tmp191 [V216 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0xc)" P-INDEP
;* V217 tmp192 [V217 ] ( 0, 0 ) ref -> zero-ref "field V31._object (fldOffset=0x0)" P-INDEP
;* V218 tmp193 [V218 ] ( 0, 0 ) int -> zero-ref "field V31._index (fldOffset=0x8)" P-INDEP
;* V219 tmp194 [V219 ] ( 0, 0 ) int -> zero-ref "field V31._length (fldOffset=0xc)" P-INDEP
;* V220 tmp195 [V220 ] ( 0, 0 ) int -> zero-ref "field V32._maxDepth (fldOffset=0x0)" P-INDEP
;* V221 tmp196 [V221 ] ( 0, 0 ) ubyte -> zero-ref "field V32._commentHandling (fldOffset=0x4)" P-INDEP
;* V222 tmp197 [V222 ] ( 0, 0 ) ubyte -> zero-ref "field V32.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V223 tmp198 [V223 ] ( 0, 0 ) int -> zero-ref "field V35._maxDepth (fldOffset=0x0)" P-INDEP
; V224 tmp199 [V224,T56] ( 2, 2 ) ubyte -> rcx "field V35._commentHandling (fldOffset=0x4)" P-INDEP
;* V225 tmp200 [V225 ] ( 0, 0 ) ubyte -> zero-ref "field V35.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V226 tmp201 [V226 ] ( 0, 0 ) ref -> zero-ref "field V45._array (fldOffset=0x0)" P-INDEP
;* V227 tmp202 [V227 ] ( 0, 0 ) long -> zero-ref "field V45._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V228 tmp203 [V228,T102] ( 3, 1.50) int -> rcx "field V45._currentDepth (fldOffset=0x10)" P-INDEP
;* V229 tmp204 [V229 ] ( 0, 0 ) ref -> zero-ref "field V49._array (fldOffset=0x0)" P-INDEP
;* V230 tmp205 [V230 ] ( 0, 0 ) long -> zero-ref "field V49._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V231 tmp206 [V231,T03] ( 3, 10 ) int -> rcx "field V49._currentDepth (fldOffset=0x10)" P-INDEP
;* V232 tmp207 [V232 ] ( 0, 0 ) ref -> zero-ref "field V53._array (fldOffset=0x0)" P-INDEP
;* V233 tmp208 [V233 ] ( 0, 0 ) long -> zero-ref "field V53._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V234 tmp209 [V234,T103] ( 3, 1.50) int -> rdi "field V53._currentDepth (fldOffset=0x10)" P-INDEP
; V235 tmp210 [V235,T70] ( 3, 1.50) byref -> r13 "field V67._reference (fldOffset=0x0)" P-INDEP
; V236 tmp211 [V236,T104] ( 3, 1.50) int -> registers "field V67._length (fldOffset=0x8)" P-INDEP
;* V237 tmp212 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V68._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp213 [V238 ] ( 0, 0 ) int -> zero-ref "field V68._length (fldOffset=0x8)" P-INDEP
; V239 tmp214 [V239,T114] ( 2, 1 ) byref -> r13 single-def "field V82._reference (fldOffset=0x0)" P-INDEP
; V240 tmp215 [V240,T126] ( 2, 1 ) int -> r12 "field V82._length (fldOffset=0x8)" P-INDEP
; V241 tmp216 [V241,T71] ( 3, 1.50) byref -> r13 "field V94._reference (fldOffset=0x0)" P-INDEP
; V242 tmp217 [V242,T105] ( 3, 1.50) int -> registers "field V94._length (fldOffset=0x8)" P-INDEP
;* V243 tmp218 [V243 ] ( 0, 0 ) byref -> zero-ref single-def "field V95._reference (fldOffset=0x0)" P-INDEP
;* V244 tmp219 [V244 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
; V245 tmp220 [V245,T115] ( 2, 1 ) byref -> r13 single-def "field V108._reference (fldOffset=0x0)" P-INDEP
; V246 tmp221 [V246,T127] ( 2, 1 ) int -> r12 "field V108._length (fldOffset=0x8)" P-INDEP
; V247 tmp222 [V247,T20] ( 6, 3 ) byref -> r14 "field V130._reference (fldOffset=0x0)" P-INDEP
-; V248 tmp223 [V248,T17] ( 7, 3.50) int -> [rbp-0x298] "field V130._length (fldOffset=0x8)" P-INDEP
+; V248 tmp223 [V248,T17] ( 7, 3.50) int -> [rbp-0x2A0] "field V130._length (fldOffset=0x8)" P-INDEP
;* V249 tmp224 [V249 ] ( 0, 0 ) byref -> zero-ref single-def "field V131._reference (fldOffset=0x0)" P-INDEP
;* V250 tmp225 [V250 ] ( 0, 0 ) int -> zero-ref "field V131._length (fldOffset=0x8)" P-INDEP
;* V251 tmp226 [V251 ] ( 0, 0 ) ref -> zero-ref single-def "field V132._object (fldOffset=0x0)" P-INDEP
;* V252 tmp227 [V252 ] ( 0, 0 ) int -> zero-ref "field V132._index (fldOffset=0x8)" P-INDEP
;* V253 tmp228 [V253 ] ( 0, 0 ) int -> zero-ref "field V132._length (fldOffset=0xc)" P-INDEP
;* V254 tmp229 [V254 ] ( 0, 0 ) byref -> zero-ref single-def "field V133._reference (fldOffset=0x0)" P-INDEP
;* V255 tmp230 [V255 ] ( 0, 0 ) int -> zero-ref "field V133._length (fldOffset=0x8)" P-INDEP
-; V256 tmp231 [V256,T10] ( 9, 4.50) ref -> [rbp-0x270] do-not-enreg[] "field V134._object (fldOffset=0x0)" P-DEP
-; V257 tmp232 [V257,T42] ( 4, 2 ) int -> [rbp-0x268] do-not-enreg[] "field V134._index (fldOffset=0x8)" P-DEP
-; V258 tmp233 [V258,T37] ( 5, 2.50) int -> [rbp-0x264] do-not-enreg[] "field V134._length (fldOffset=0xc)" P-DEP
+; V256 tmp231 [V256,T10] ( 9, 4.50) ref -> [rbp-0x278] do-not-enreg[] "field V134._object (fldOffset=0x0)" P-DEP
+; V257 tmp232 [V257,T42] ( 4, 2 ) int -> [rbp-0x270] do-not-enreg[] "field V134._index (fldOffset=0x8)" P-DEP
+; V258 tmp233 [V258,T37] ( 5, 2.50) int -> [rbp-0x26C] do-not-enreg[] "field V134._length (fldOffset=0xc)" P-DEP
; V259 tmp234 [V259,T116] ( 2, 1 ) ref -> rdi single-def "field V140._object (fldOffset=0x0)" P-INDEP
; V260 tmp235 [V260,T128] ( 2, 1 ) int -> rsi "field V140._index (fldOffset=0x8)" P-INDEP
; V261 tmp236 [V261,T129] ( 2, 1 ) int -> rdx "field V140._length (fldOffset=0xc)" P-INDEP
;* V262 tmp237 [V262 ] ( 0, 0 ) ref -> zero-ref single-def "field V141._object (fldOffset=0x0)" P-INDEP
;* V263 tmp238 [V263 ] ( 0, 0 ) int -> zero-ref "field V141._index (fldOffset=0x8)" P-INDEP
;* V264 tmp239 [V264 ] ( 0, 0 ) int -> zero-ref "field V141._length (fldOffset=0xc)" P-INDEP
;* V265 tmp240 [V265 ] ( 0, 0 ) ref -> zero-ref single-def "field V143._object (fldOffset=0x0)" P-INDEP
;* V266 tmp241 [V266 ] ( 0, 0 ) int -> zero-ref "field V143._index (fldOffset=0x8)" P-INDEP
;* V267 tmp242 [V267 ] ( 0, 0 ) int -> zero-ref "field V143._length (fldOffset=0xc)" P-INDEP
; V268 tmp243 [V268,T117] ( 2, 1 ) ref -> rdi single-def "field V148._object (fldOffset=0x0)" P-INDEP
; V269 tmp244 [V269,T130] ( 2, 1 ) int -> rsi "field V148._index (fldOffset=0x8)" P-INDEP
; V270 tmp245 [V270,T131] ( 2, 1 ) int -> r13 "field V148._length (fldOffset=0xc)" P-INDEP
;* V271 tmp246 [V271 ] ( 0, 0 ) byref -> zero-ref "field V151._reference (fldOffset=0x0)" P-INDEP
;* V272 tmp247 [V272 ] ( 0, 0 ) int -> zero-ref "field V151._length (fldOffset=0x8)" P-INDEP
;* V273 tmp248 [V273 ] ( 0, 0 ) byref -> zero-ref single-def "field V155._reference (fldOffset=0x0)" P-INDEP
;* V274 tmp249 [V274 ] ( 0, 0 ) int -> zero-ref "field V155._length (fldOffset=0x8)" P-INDEP
;* V275 tmp250 [V275 ] ( 0, 0 ) byref -> zero-ref "field V157._reference (fldOffset=0x0)" P-DEP
;* V276 tmp251 [V276 ] ( 0, 0 ) int -> zero-ref "field V157._length (fldOffset=0x8)" P-DEP
; V277 tmp252 [V277,T118] ( 2, 1 ) byref -> rsi "field V158._reference (fldOffset=0x0)" P-INDEP
; V278 tmp253 [V278,T132] ( 2, 1 ) int -> r13 "field V158._length (fldOffset=0x8)" P-INDEP
;* V279 tmp254 [V279 ] ( 0, 0 ) byref -> zero-ref single-def "field V164._reference (fldOffset=0x0)" P-INDEP
;* V280 tmp255 [V280 ] ( 0, 0 ) int -> zero-ref "field V164._length (fldOffset=0x8)" P-INDEP
;* V281 tmp256 [V281 ] ( 0, 0 ) byref -> zero-ref single-def "field V165._reference (fldOffset=0x0)" P-INDEP
;* V282 tmp257 [V282 ] ( 0, 0 ) int -> zero-ref "field V165._length (fldOffset=0x8)" P-INDEP
;* V283 tmp258 [V283 ] ( 0, 0 ) byref -> zero-ref single-def "field V169._reference (fldOffset=0x0)" P-INDEP
;* V284 tmp259 [V284 ] ( 0, 0 ) int -> zero-ref "field V169._length (fldOffset=0x8)" P-INDEP
-; V285 tmp260 [V285,T21] ( 4, 3 ) ref -> [rbp-0x280] do-not-enreg[] "field V173._object (fldOffset=0x0)" P-DEP
-; V286 tmp261 [V286,T23] ( 4, 3 ) int -> [rbp-0x278] do-not-enreg[] "field V173._index (fldOffset=0x8)" P-DEP
-; V287 tmp262 [V287,T24] ( 4, 3 ) int -> [rbp-0x274] do-not-enreg[] "field V173._length (fldOffset=0xc)" P-DEP
+; V285 tmp260 [V285,T21] ( 4, 3 ) ref -> [rbp-0x288] do-not-enreg[] "field V173._object (fldOffset=0x0)" P-DEP
+; V286 tmp261 [V286,T23] ( 4, 3 ) int -> [rbp-0x280] do-not-enreg[] "field V173._index (fldOffset=0x8)" P-DEP
+; V287 tmp262 [V287,T24] ( 4, 3 ) int -> [rbp-0x27C] do-not-enreg[] "field V173._length (fldOffset=0xc)" P-DEP
;* V288 tmp263 [V288 ] ( 0, 0 ) ref -> zero-ref "field V174._object (fldOffset=0x0)" P-INDEP
;* V289 tmp264 [V289 ] ( 0, 0 ) int -> zero-ref "field V174._index (fldOffset=0x8)" P-INDEP
;* V290 tmp265 [V290 ] ( 0, 0 ) int -> zero-ref "field V174._length (fldOffset=0xc)" P-INDEP
-; V291 tmp266 [V291,T22] ( 4, 3 ) ref -> [rbp-0x290] do-not-enreg[] "field V180._object (fldOffset=0x0)" P-DEP
-; V292 tmp267 [V292,T25] ( 4, 3 ) int -> [rbp-0x288] do-not-enreg[] "field V180._index (fldOffset=0x8)" P-DEP
-; V293 tmp268 [V293,T26] ( 4, 3 ) int -> [rbp-0x284] do-not-enreg[] "field V180._length (fldOffset=0xc)" P-DEP
+; V291 tmp266 [V291,T22] ( 4, 3 ) ref -> [rbp-0x298] do-not-enreg[] "field V180._object (fldOffset=0x0)" P-DEP
+; V292 tmp267 [V292,T25] ( 4, 3 ) int -> [rbp-0x290] do-not-enreg[] "field V180._index (fldOffset=0x8)" P-DEP
+; V293 tmp268 [V293,T26] ( 4, 3 ) int -> [rbp-0x28C] do-not-enreg[] "field V180._length (fldOffset=0xc)" P-DEP
; V294 tmp269 [V294,T45] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V295 tmp270 [V295,T14] ( 4, 4 ) ref -> rax single-def "BlockOp address local"
; V296 tmp271 [V296,T138] ( 3, 0 ) ref -> rax single-def "argument with side effect"
; V297 tmp272 [V297,T140] ( 2, 0 ) ref -> rbx single-def "argument with side effect"
; V298 tmp273 [V298,T141] ( 2, 0 ) ref -> rdx single-def "argument with side effect"
-; V299 PSPSym [V299,T134] ( 1, 1 ) long -> [rbp-0x300] do-not-enreg[V] "PSPSym"
-; V300 cse0 [V300,T38] ( 5, 2.50) int -> rdx "CSE #01: conservative"
+; V299 PSPSym [V299,T134] ( 1, 1 ) long -> [rbp-0x310] do-not-enreg[V] "PSPSym"
+; V300 cse0 [V300,T38] ( 5, 2.50) int -> r8 "CSE #01: conservative"
; V301 cse1 [V301,T106] ( 3, 1.50) int -> rdi "CSE #02: conservative"
; V302 cse2 [V302,T133] ( 2, 1 ) int -> rsi "CSE #18: conservative"
-; V303 rat0 [V303,T31] ( 3, 2.92) int -> r8 "ReplaceWithLclVar is creating a new local variable"
+; V303 rat0 [V303,T31] ( 3, 2.92) int -> rcx "ReplaceWithLclVar is creating a new local variable"
;
-; Lcl frame size = 728
+; Lcl frame size = 744
G_M35920_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 728
- lea rbp, [rsp+0x300]
+ sub rsp, 744
+ lea rbp, [rsp+0x310]
+ xor eax, eax
+ mov qword ptr [rbp-0x298], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x290], xmm8
vmovdqa xmmword ptr [rbp-0x280], xmm8
mov rax, -576
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
- mov qword ptr [rbp-0x300], rsp
- mov bword ptr [rbp-0x2A0], rdi
+ mov qword ptr [rbp-0x310], rsp
+ mov bword ptr [rbp-0x2A8], rdi
mov r8, rdi
mov rbx, rsi
mov r15d, edx
mov r14d, ecx
- ;; size=110 bbWeight=1 PerfScore 22.58
+ ;; size=119 bbWeight=1 PerfScore 23.83
G_M35920_IG02:
lea rsi, [rbp-0x60]
mov rdi, r8
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
call [rax]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
movzx rcx, byte ptr [rbp-0x44]
cmp ecx, 2
je G_M35920_IG97
lea rdi, bword ptr [rbp-0x120]
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
mov ecx, 24
rep movsq
xor r13, r13
xor r12d, r12d
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x138], xmm0
vmovdqu xmmword ptr [rbp-0x130], xmm0
;; size=80 bbWeight=1 PerfScore 35.83
G_M35920_IG03:
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
movzx rdi, byte ptr [rsi+0x28]
test edi, edi
je SHORT G_M35920_IG05
;; size=16 bbWeight=1 PerfScore 4.25
G_M35920_IG04:
cmp edi, 5
- jne G_M35920_IG07
- ;; size=9 bbWeight=0.50 PerfScore 0.62
+ jne SHORT G_M35920_IG07
+ ;; size=5 bbWeight=0.50 PerfScore 0.62
G_M35920_IG05:
mov rdi, rsi
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
test eax, eax
jne SHORT G_M35920_IG07
test r15b, r15b
jne G_M35920_IG55
- mov rdi, bword ptr [rbp-0x2A0]
- lea rsi, bword ptr [rbp-0x120]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- xor rcx, rcx
- mov gword ptr [rbx], rcx
- ;; size=118 bbWeight=0.50 PerfScore 26.00
+ mov rdi, bword ptr [rbp-0x2A8]
+ lea rsi, [rbp-0x120]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ xor rdi, rdi
+ mov gword ptr [rbx], rdi
+ ;; size=57 bbWeight=0.50 PerfScore 5.00
G_M35920_IG06:
xor eax, eax
jmp G_M35920_IG95
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M35920_IG07:
- mov rsi, bword ptr [rbp-0x2A0]
- movzx rdx, byte ptr [rsi+0x28]
- lea r8d, [rdx-0x01]
- cmp r8d, 10
+ mov rsi, bword ptr [rbp-0x2A8]
+ movzx r8, byte ptr [rsi+0x28]
+ lea ecx, [r8-0x01]
+ cmp ecx, 10
ja G_M35920_IG52
;; size=25 bbWeight=0.50 PerfScore 2.38
G_M35920_IG08:
- mov edi, r8d
+ mov edi, ecx
lea rax, [reloc @RWD00]
mov eax, dword ptr [rax+4*rdi]
lea rcx, G_M35920_IG02
add rax, rcx
jmp rax
- ;; size=25 bbWeight=0.46 PerfScore 2.75
+ ;; size=24 bbWeight=0.46 PerfScore 2.75
G_M35920_IG09:
- mov rsi, bword ptr [rbp-0x2A0]
mov rax, qword ptr [rsi+0x18]
mov qword ptr [rbp-0x140], rax
cmp byte ptr [rsi+0x24], 0
je G_M35920_IG17
- cmp edx, 5
+ cmp r8d, 5
jne SHORT G_M35920_IG10
mov rdi, rsi
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
- mov rsi, bword ptr [rbp-0x2A0]
- ;; size=55 bbWeight=0.50 PerfScore 6.88
+ mov rsi, bword ptr [rbp-0x2A8]
+ ;; size=49 bbWeight=0.50 PerfScore 6.38
G_M35920_IG10:
movzx rdi, byte ptr [rsi+0x28]
mov ecx, edi
cmp ecx, 1
je SHORT G_M35920_IG11
cmp ecx, 3
jne G_M35920_IG22
;; size=21 bbWeight=0.50 PerfScore 2.38
G_M35920_IG11:
mov ecx, dword ptr [rsi+0x58]
mov r15d, ecx
cmp edi, 1
je SHORT G_M35920_IG12
cmp edi, 3
jne SHORT G_M35920_IG13
;; size=16 bbWeight=0.50 PerfScore 2.38
G_M35920_IG12:
lea r15d, [rcx-0x01]
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M35920_IG13:
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
mov rdi, rsi
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
mov ecx, dword ptr [rdi+0x58]
mov esi, ecx
movzx rax, byte ptr [rdi+0x28]
cmp eax, 1
je SHORT G_M35920_IG15
;; size=43 bbWeight=4 PerfScore 44.00
G_M35920_IG14:
cmp eax, 3
jne SHORT G_M35920_IG16
;; size=5 bbWeight=2 PerfScore 2.50
G_M35920_IG15:
lea esi, [rcx-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M35920_IG16:
cmp r15d, esi
jl SHORT G_M35920_IG13
jmp G_M35920_IG22
;; size=10 bbWeight=4 PerfScore 13.00
G_M35920_IG17:
lea rdi, bword ptr [rbp-0x238]
mov ecx, 24
rep movsq
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
mov edi, dword ptr [rsi+0x58]
mov eax, edi
- cmp edx, 1
+ cmp r8d, 1
je SHORT G_M35920_IG18
- cmp edx, 3
+ cmp r8d, 3
jne SHORT G_M35920_IG19
- ;; size=37 bbWeight=0.50 PerfScore 15.75
+ ;; size=39 bbWeight=0.50 PerfScore 15.75
G_M35920_IG18:
lea eax, [rdi-0x01]
;; size=3 bbWeight=0.50 PerfScore 0.25
G_M35920_IG19:
mov rdi, rsi
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov edx, eax
- test edx, edx
+ mov dword ptr [rbp-0x23C], eax
+ test eax, eax
jne SHORT G_M35920_IG20
- mov rdi, bword ptr [rbp-0x2A0]
- lea rsi, bword ptr [rbp-0x238]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=108 bbWeight=0.50 PerfScore 25.00
+ mov rdi, bword ptr [rbp-0x2A8]
+ lea rsi, [rbp-0x238]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=51 bbWeight=0.50 PerfScore 4.38
G_M35920_IG20:
- test edx, edx
+ mov eax, dword ptr [rbp-0x23C]
+ test eax, eax
jne SHORT G_M35920_IG22
test r15b, r15b
jne G_M35920_IG56
- mov rdi, bword ptr [rbp-0x2A0]
- lea rsi, bword ptr [rbp-0x120]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ mov rdi, bword ptr [rbp-0x2A8]
+ lea rsi, [rbp-0x120]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
xor rsi, rsi
mov gword ptr [rbx], rsi
- ;; size=103 bbWeight=0.50 PerfScore 24.25
+ ;; size=48 bbWeight=0.50 PerfScore 3.75
G_M35920_IG21:
xor eax, eax
jmp G_M35920_IG95
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M35920_IG22:
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
mov r15, qword ptr [rdi+0x10]
movsxd rax, dword ptr [rdi+0x20]
add r15, rax
sub r15, qword ptr [rbp-0x140]
;; size=25 bbWeight=0.50 PerfScore 4.62
G_M35920_IG23:
vmovdqu xmm0, xmmword ptr [rdi+0x80]
vmovdqu xmmword ptr [rbp-0x158], xmm0
mov rsi, qword ptr [rdi+0x90]
mov qword ptr [rbp-0x148], rsi
;; size=30 bbWeight=0.50 PerfScore 4.00
G_M35920_IG24:
mov rsi, gword ptr [rbp-0x158]
mov rcx, gword ptr [rbp-0x150]
- mov gword ptr [rbp-0x2B0], rcx
+ mov gword ptr [rbp-0x2B8], rcx
mov edx, dword ptr [rbp-0x148]
and edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x23C], edx
+ mov dword ptr [rbp-0x240], edx
mov r8d, dword ptr [rbp-0x144]
and r8d, 0xD1FFAB1E
- mov dword ptr [rbp-0x240], r8d
+ mov dword ptr [rbp-0x244], r8d
cmp rsi, rcx
je SHORT G_M35920_IG25
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r9, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r9]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2B8], rax
- mov rsi, gword ptr [rbp-0x2B0]
+ mov gword ptr [rbp-0x2C0], rax
+ mov rsi, gword ptr [rbp-0x2B8]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rsi, dword ptr [rbp-0x240]
+ movsxd rsi, dword ptr [rbp-0x244]
add rsi, qword ptr [rax+0x10]
- movsxd rdi, dword ptr [rbp-0x23C]
- mov rax, gword ptr [rbp-0x2B8]
+ movsxd rdi, dword ptr [rbp-0x240]
+ mov rax, gword ptr [rbp-0x2C0]
add rdi, qword ptr [rax+0x10]
sub rsi, rdi
jmp SHORT G_M35920_IG26
;; size=158 bbWeight=0.50 PerfScore 16.50
G_M35920_IG25:
- mov r8d, dword ptr [rbp-0x240]
- sub r8d, dword ptr [rbp-0x23C]
+ mov r8d, dword ptr [rbp-0x244]
+ sub r8d, dword ptr [rbp-0x240]
movsxd rsi, r8d
;; size=17 bbWeight=0.50 PerfScore 1.62
G_M35920_IG26:
test rsi, rsi
jne G_M35920_IG31
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
lea rsi, bword ptr [rdi+0x80]
mov rcx, gword ptr [rsi]
mov r13, gword ptr [rsi+0x08]
mov r12d, dword ptr [rsi+0x10]
and r12d, 0xD1FFAB1E
mov edx, dword ptr [rsi+0x14]
and edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x244], edx
+ mov dword ptr [rbp-0x248], edx
cmp rcx, r13
je SHORT G_M35920_IG27
mov rsi, rcx
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2C0], rax
+ mov gword ptr [rbp-0x2C8], rax
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rdi, dword ptr [rbp-0x244]
+ movsxd rdi, dword ptr [rbp-0x248]
add rdi, qword ptr [rax+0x10]
movsxd rsi, r12d
- mov r12, gword ptr [rbp-0x2C0]
+ mov r12, gword ptr [rbp-0x2C8]
add rsi, qword ptr [r12+0x10]
sub rdi, rsi
jmp SHORT G_M35920_IG28
;; size=149 bbWeight=0.50 PerfScore 17.25
G_M35920_IG27:
- mov edx, dword ptr [rbp-0x244]
+ mov edx, dword ptr [rbp-0x248]
sub edx, r12d
movsxd rsi, edx
mov rdi, rsi
;; size=15 bbWeight=0.50 PerfScore 0.88
G_M35920_IG28:
test rdi, rdi
je SHORT G_M35920_IG29
xor r13, r13
xor edi, edi
jmp SHORT G_M35920_IG30
;; size=12 bbWeight=0.50 PerfScore 1.88
G_M35920_IG29:
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
mov r13, bword ptr [rdi+0x30]
mov esi, dword ptr [rdi+0x38]
mov edi, esi
;; size=16 bbWeight=0.50 PerfScore 2.62
G_M35920_IG30:
mov rax, qword ptr [rbp-0x140]
movsxd rsi, eax
cmp rax, rsi
jne G_M35920_IG46
movsxd rsi, r15d
cmp r15, rsi
jne G_M35920_IG46
mov esi, eax
mov edx, r15d
add rsi, rdx
mov edi, edi
cmp rsi, rdi
ja G_M35920_IG57
mov edi, eax
add r13, rdi
mov r12d, r15d
jmp G_M35920_IG59
;; size=63 bbWeight=0.50 PerfScore 4.50
G_M35920_IG31:
mov rax, qword ptr [rbp-0x140]
lea rdi, [rbp-0x158]
lea rsi, [rbp-0x138]
mov rdx, rax
mov rcx, r15
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
jmp G_M35920_IG59
;; size=44 bbWeight=0.50 PerfScore 3.88
G_M35920_IG32:
test r14b, r14b
je SHORT G_M35920_IG36
- mov rsi, bword ptr [rbp-0x2A0]
cmp byte ptr [rsi+0x2D], 0
je SHORT G_M35920_IG35
- ;; size=18 bbWeight=0.50 PerfScore 3.12
+ ;; size=11 bbWeight=0.50 PerfScore 2.62
G_M35920_IG33:
vmovdqu xmm0, xmmword ptr [rsi+0xA8]
vmovdqu xmmword ptr [rbp-0x138], xmm0
- mov rdx, qword ptr [rsi+0xB8]
- mov qword ptr [rbp-0x128], rdx
+ mov rdi, qword ptr [rsi+0xB8]
+ mov qword ptr [rbp-0x128], rdi
;; size=30 bbWeight=0.50 PerfScore 4.00
G_M35920_IG34:
jmp G_M35920_IG59
;; size=5 bbWeight=0.50 PerfScore 1.00
G_M35920_IG35:
mov r13, bword ptr [rsi+0x98]
mov r12d, dword ptr [rsi+0xA0]
jmp G_M35920_IG59
;; size=19 bbWeight=0.50 PerfScore 3.00
G_M35920_IG36:
- mov edi, edx
+ mov edi, r8d
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonDocument:CreateForLiteral(ubyte):System.Text.Json.JsonDocument
call [rax]System.Text.Json.JsonDocument:CreateForLiteral(ubyte):System.Text.Json.JsonDocument
mov rsi, rax
mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov eax, 1
jmp G_M35920_IG95
- ;; size=35 bbWeight=0.50 PerfScore 3.62
+ ;; size=36 bbWeight=0.50 PerfScore 3.62
G_M35920_IG37:
- mov rsi, bword ptr [rbp-0x2A0]
cmp byte ptr [rsi+0x2D], 0
je SHORT G_M35920_IG35
jmp SHORT G_M35920_IG33
- ;; size=15 bbWeight=0.50 PerfScore 3.50
+ ;; size=8 bbWeight=0.50 PerfScore 3.00
G_M35920_IG38:
- mov rsi, bword ptr [rbp-0x2A0]
vmovdqu xmm0, xmmword ptr [rsi+0x80]
vmovdqu xmmword ptr [rbp-0x170], xmm0
mov rdi, qword ptr [rsi+0x90]
mov qword ptr [rbp-0x160], rdi
- ;; size=37 bbWeight=0.50 PerfScore 4.50
+ ;; size=30 bbWeight=0.50 PerfScore 4.00
G_M35920_IG39:
mov rdi, gword ptr [rbp-0x170]
mov r15, gword ptr [rbp-0x168]
mov eax, dword ptr [rbp-0x160]
and eax, 0xD1FFAB1E
- mov dword ptr [rbp-0x248], eax
+ mov dword ptr [rbp-0x24C], eax
mov ecx, dword ptr [rbp-0x15C]
and ecx, 0xD1FFAB1E
- mov dword ptr [rbp-0x24C], ecx
+ mov dword ptr [rbp-0x250], ecx
cmp rdi, r15
je SHORT G_M35920_IG40
mov rsi, rdi
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rdx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rdx]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2C8], rax
+ mov gword ptr [rbp-0x2D0], rax
mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rsi, dword ptr [rbp-0x24C]
+ movsxd rsi, dword ptr [rbp-0x250]
add rsi, qword ptr [rax+0x10]
- movsxd rdi, dword ptr [rbp-0x248]
- mov r15, gword ptr [rbp-0x2C8]
+ movsxd rdi, dword ptr [rbp-0x24C]
+ mov r15, gword ptr [rbp-0x2D0]
add rdi, qword ptr [r15+0x10]
sub rsi, rdi
jmp SHORT G_M35920_IG41
;; size=145 bbWeight=0.50 PerfScore 15.75
G_M35920_IG40:
- mov ecx, dword ptr [rbp-0x24C]
- sub ecx, dword ptr [rbp-0x248]
+ mov ecx, dword ptr [rbp-0x250]
+ sub ecx, dword ptr [rbp-0x24C]
movsxd rdi, ecx
mov rsi, rdi
;; size=18 bbWeight=0.50 PerfScore 1.75
G_M35920_IG41:
test rsi, rsi
jne G_M35920_IG47
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
mov r12d, dword ptr [rsi+0xA0]
add r12d, 2
lea rdi, bword ptr [rsi+0x80]
mov rax, gword ptr [rdi]
mov r13, gword ptr [rdi+0x08]
mov r15d, dword ptr [rdi+0x10]
and r15d, 0xD1FFAB1E
mov ecx, dword ptr [rdi+0x14]
and ecx, 0xD1FFAB1E
- mov dword ptr [rbp-0x250], ecx
+ mov dword ptr [rbp-0x254], ecx
cmp rax, r13
je SHORT G_M35920_IG42
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2D0], rax
+ mov gword ptr [rbp-0x2D8], rax
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rsi, dword ptr [rbp-0x250]
+ movsxd rsi, dword ptr [rbp-0x254]
add rsi, qword ptr [rax+0x10]
movsxd rdi, r15d
- mov r15, gword ptr [rbp-0x2D0]
+ mov r15, gword ptr [rbp-0x2D8]
add rdi, qword ptr [r15+0x10]
sub rsi, rdi
jmp SHORT G_M35920_IG43
;; size=159 bbWeight=0.50 PerfScore 18.38
G_M35920_IG42:
- mov ecx, dword ptr [rbp-0x250]
+ mov ecx, dword ptr [rbp-0x254]
sub ecx, r15d
movsxd rdi, ecx
mov rsi, rdi
;; size=15 bbWeight=0.50 PerfScore 0.88
G_M35920_IG43:
test rsi, rsi
je SHORT G_M35920_IG44
xor r13, r13
xor esi, esi
jmp SHORT G_M35920_IG45
;; size=12 bbWeight=0.50 PerfScore 1.88
G_M35920_IG44:
- mov rsi, bword ptr [rbp-0x2A0]
+ mov rsi, bword ptr [rbp-0x2A8]
mov r13, bword ptr [rsi+0x30]
mov edi, dword ptr [rsi+0x38]
mov esi, edi
;; size=16 bbWeight=0.50 PerfScore 2.62
G_M35920_IG45:
- mov r15, bword ptr [rbp-0x2A0]
+ mov r15, bword ptr [rbp-0x2A8]
mov edi, dword ptr [r15+0x18]
mov eax, edi
mov ecx, r12d
add rax, rcx
mov esi, esi
cmp rax, rsi
ja G_M35920_IG57
mov esi, edi
add r13, rsi
jmp G_M35920_IG59
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M35920_IG46:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M35920_IG47:
- mov r15, bword ptr [rbp-0x2A0]
+ mov r15, bword ptr [rbp-0x2A8]
cmp byte ptr [r15+0x2D], 0
je G_M35920_IG50
mov rsi, gword ptr [r15+0xA8]
mov rax, gword ptr [r15+0xB0]
- mov gword ptr [rbp-0x2F0], rax
+ mov gword ptr [rbp-0x2F8], rax
mov ecx, dword ptr [r15+0xB8]
mov edx, dword ptr [r15+0xBC]
and ecx, 0xD1FFAB1E
- mov dword ptr [rbp-0x254], ecx
+ mov dword ptr [rbp-0x258], ecx
and edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x258], edx
+ mov dword ptr [rbp-0x25C], edx
cmp rsi, rax
je SHORT G_M35920_IG48
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r8, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r8]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2D8], rax
- mov rsi, gword ptr [rbp-0x2F0]
+ mov gword ptr [rbp-0x2E0], rax
+ mov rsi, gword ptr [rbp-0x2F8]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rcx, dword ptr [rbp-0x258]
+ movsxd rcx, dword ptr [rbp-0x25C]
add rcx, qword ptr [rax+0x10]
- movsxd rdx, dword ptr [rbp-0x254]
- mov rsi, gword ptr [rbp-0x2D8]
+ movsxd rdx, dword ptr [rbp-0x258]
+ mov rsi, gword ptr [rbp-0x2E0]
add rdx, qword ptr [rsi+0x10]
sub rcx, rdx
jmp SHORT G_M35920_IG49
;; size=175 bbWeight=0.50 PerfScore 21.00
G_M35920_IG48:
- mov edx, dword ptr [rbp-0x258]
- sub edx, dword ptr [rbp-0x254]
+ mov edx, dword ptr [rbp-0x25C]
+ sub edx, dword ptr [rbp-0x258]
movsxd rcx, edx
;; size=15 bbWeight=0.50 PerfScore 1.62
G_M35920_IG49:
add rcx, 2
jmp SHORT G_M35920_IG51
;; size=6 bbWeight=0.50 PerfScore 1.12
G_M35920_IG50:
mov ecx, dword ptr [r15+0xA0]
add rcx, 2
;; size=11 bbWeight=0.50 PerfScore 1.12
G_M35920_IG51:
mov rdx, qword ptr [r15+0x18]
lea rsi, [rbp-0x138]
lea rdi, [rbp-0x170]
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
jmp G_M35920_IG59
;; size=35 bbWeight=0.50 PerfScore 4.12
G_M35920_IG52:
test r15b, r15b
- jne G_M35920_IG58
- mov rdi, bword ptr [rbp-0x2A0]
- lea rsi, bword ptr [rbp-0x120]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ jne SHORT G_M35920_IG58
+ mov rdi, rsi
+ lea rsi, [rbp-0x120]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
xor rax, rax
mov gword ptr [rbx], rax
- ;; size=99 bbWeight=0.50 PerfScore 23.62
+ ;; size=30 bbWeight=0.50 PerfScore 2.25
G_M35920_IG53:
jmp G_M35920_IG95
;; size=5 bbWeight=0.50 PerfScore 1.00
G_M35920_IG54:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M35920_IG55:
xor rcx, rcx
xor r8d, r8d
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
mov esi, 32
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
;; size=32 bbWeight=0 PerfScore 0.00
G_M35920_IG56:
xor rcx, rcx
xor r8d, r8d
- mov rdi, bword ptr [rbp-0x2A0]
+ mov rdi, bword ptr [rbp-0x2A8]
mov esi, 32
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
;; size=32 bbWeight=0 PerfScore 0.00
G_M35920_IG57:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M35920_IG58:
- mov rsi, bword ptr [rbp-0x2A0]
mov rcx, bword ptr [rsi+0x98]
mov r8d, dword ptr [rsi+0xA0]
test r8d, r8d
je SHORT G_M35920_IG54
movzx rdx, byte ptr [rcx]
xor rcx, rcx
xor r8d, r8d
mov rdi, rsi
mov esi, 15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
- ;; size=55 bbWeight=0 PerfScore 0.00
+ ;; size=48 bbWeight=0 PerfScore 0.00
G_M35920_IG59:
test r12d, r12d
je SHORT G_M35920_IG60
mov eax, r12d
jmp G_M35920_IG63
;; size=13 bbWeight=0.50 PerfScore 1.75
G_M35920_IG60:
mov rsi, gword ptr [rbp-0x138]
mov rax, gword ptr [rbp-0x130]
- mov gword ptr [rbp-0x2E0], rax
+ mov gword ptr [rbp-0x2E8], rax
mov ecx, dword ptr [rbp-0x128]
and ecx, 0xD1FFAB1E
- mov dword ptr [rbp-0x25C], ecx
+ mov dword ptr [rbp-0x260], ecx
mov edx, dword ptr [rbp-0x124]
and edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x260], edx
+ mov dword ptr [rbp-0x264], edx
cmp rsi, rax
je SHORT G_M35920_IG61
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r8, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r8]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x2E8], rax
- mov rsi, gword ptr [rbp-0x2E0]
+ mov gword ptr [rbp-0x2F0], rax
+ mov rsi, gword ptr [rbp-0x2E8]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
- movsxd rdi, dword ptr [rbp-0x260]
+ movsxd rdi, dword ptr [rbp-0x264]
add rdi, qword ptr [rax+0x10]
- movsxd rsi, dword ptr [rbp-0x25C]
- mov rax, gword ptr [rbp-0x2E8]
+ movsxd rsi, dword ptr [rbp-0x260]
+ mov rax, gword ptr [rbp-0x2F0]
add rsi, qword ptr [rax+0x10]
sub rdi, rsi
jmp SHORT G_M35920_IG62
;; size=155 bbWeight=0.50 PerfScore 16.50
G_M35920_IG61:
- mov edx, dword ptr [rbp-0x260]
- sub edx, dword ptr [rbp-0x25C]
+ mov edx, dword ptr [rbp-0x264]
+ sub edx, dword ptr [rbp-0x260]
movsxd rdi, edx
;; size=15 bbWeight=0.50 PerfScore 1.62
G_M35920_IG62:
movsxd rsi, edi
cmp rdi, rsi
jne G_M35920_IG96
mov eax, edi
mov dword ptr [rbp-0x174], eax
mov eax, dword ptr [rbp-0x174]
;; size=26 bbWeight=0.50 PerfScore 1.88
G_M35920_IG63:
test r14b, r14b
je G_M35920_IG86
mov dword ptr [rbp-0x174], eax
mov rdi, 0xD1FFAB1E
mov esi, 15
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[ubyte]:s_shared
mov rdi, gword ptr [rdi]
mov esi, dword ptr [rbp-0x174]
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[ubyte]:Rent(int):ubyte[]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[ubyte]:Rent(int):ubyte[]:this
mov rcx, rax
- mov gword ptr [rbp-0x2A8], rcx
+ mov gword ptr [rbp-0x2B0], rcx
test rcx, rcx
jne SHORT G_M35920_IG64
mov r15d, dword ptr [rbp-0x174]
test r15d, r15d
jne G_M35920_IG98
xor r14, r14
xor eax, eax
jmp SHORT G_M35920_IG65
;; size=106 bbWeight=0.50 PerfScore 10.25
G_M35920_IG64:
mov r15d, dword ptr [rbp-0x174]
cmp dword ptr [rcx+0x08], r15d
jb G_M35920_IG98
lea r14, bword ptr [rcx+0x10]
mov eax, r15d
- mov rcx, gword ptr [rbp-0x2A8]
+ mov rcx, gword ptr [rbp-0x2B0]
;; size=31 bbWeight=0.50 PerfScore 3.38
G_M35920_IG65:
- mov bword ptr [rbp-0x2F8], r14
- mov dword ptr [rbp-0x298], eax
- mov dword ptr [rbp-0x294], eax
+ mov bword ptr [rbp-0x300], r14
+ mov dword ptr [rbp-0x2A0], eax
+ mov dword ptr [rbp-0x29C], eax
;; size=19 bbWeight=0.50 PerfScore 1.50
G_M35920_IG66:
test r12d, r12d
jne G_M35920_IG84
mov rsi, gword ptr [rbp-0x138]
cmp rsi, gword ptr [rbp-0x130]
jne G_M35920_IG83
mov rsi, gword ptr [rbp-0x138]
test rsi, rsi
jne SHORT G_M35920_IG69
xor rsi, rsi
- mov gword ptr [rbp-0x270], rsi
+ mov gword ptr [rbp-0x278], rsi
;; size=50 bbWeight=0.50 PerfScore 4.38
G_M35920_IG67:
- mov dword ptr [rbp-0x268], esi
+ mov dword ptr [rbp-0x270], esi
;; size=6 bbWeight=0.50 PerfScore 0.50
G_M35920_IG68:
- mov dword ptr [rbp-0x264], esi
+ mov dword ptr [rbp-0x26C], esi
jmp SHORT G_M35920_IG70
;; size=8 bbWeight=0.50 PerfScore 1.50
G_M35920_IG69:
mov r12d, dword ptr [rbp-0x128]
mov r13d, dword ptr [rbp-0x124]
cmp rsi, gword ptr [rbp-0x130]
setne dl
movzx rdx, dl
mov edi, r12d
or edi, r13d
jl G_M35920_IG81
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rdx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rdx]CORINFO_HELP_CHKCASTCLASS
mov rdi, gword ptr [rax+0x18]
mov esi, dword ptr [rax+0x20]
mov edx, dword ptr [rax+0x24]
sub r13d, r12d
mov eax, r12d
mov ecx, r13d
add rax, rcx
cmp rax, rdx
ja G_M35920_IG80
add esi, r12d
- mov gword ptr [rbp-0x270], rdi
- mov dword ptr [rbp-0x268], esi
- mov dword ptr [rbp-0x264], r13d
- mov rcx, gword ptr [rbp-0x2A8]
+ mov gword ptr [rbp-0x278], rdi
+ mov dword ptr [rbp-0x270], esi
+ mov dword ptr [rbp-0x26C], r13d
+ mov rcx, gword ptr [rbp-0x2B0]
;; size=122 bbWeight=0.50 PerfScore 11.38
G_M35920_IG70:
xor rsi, rsi
xor r13d, r13d
- cmp gword ptr [rbp-0x270], 0
+ cmp gword ptr [rbp-0x278], 0
je SHORT G_M35920_IG72
- mov rsi, gword ptr [rbp-0x270]
+ mov rsi, gword ptr [rbp-0x278]
mov rdi, qword ptr [rsi]
test dword ptr [rdi], 0xD1FFAB1E
je G_M35920_IG82
- mov rsi, gword ptr [rbp-0x270]
+ mov rsi, gword ptr [rbp-0x278]
add rsi, 16
- mov rdi, gword ptr [rbp-0x270]
+ mov rdi, gword ptr [rbp-0x278]
mov r13d, dword ptr [rdi+0x08]
;; size=59 bbWeight=0.50 PerfScore 7.38
G_M35920_IG71:
- mov edi, dword ptr [rbp-0x268]
+ mov edi, dword ptr [rbp-0x270]
and edi, 0xD1FFAB1E
- mov edx, dword ptr [rbp-0x264]
+ mov edx, dword ptr [rbp-0x26C]
add rdx, rdi
mov r8d, r13d
cmp rdx, r8
ja G_M35920_IG79
add rsi, rdi
- mov r13d, dword ptr [rbp-0x264]
+ mov r13d, dword ptr [rbp-0x26C]
;; size=43 bbWeight=0.50 PerfScore 2.62
G_M35920_IG72:
- mov eax, dword ptr [rbp-0x298]
+ mov eax, dword ptr [rbp-0x2A0]
cmp r13d, eax
jg G_M35920_IG78
ja SHORT G_M35920_IG77
mov edx, r13d
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
;; size=35 bbWeight=0.50 PerfScore 3.50
G_M35920_IG73:
- mov rcx, gword ptr [rbp-0x2A8]
+ mov rcx, gword ptr [rbp-0x2B0]
test rcx, rcx
jne G_M35920_IG85
test r15d, r15d
jne SHORT G_M35920_IG79
xor rdi, rdi
- mov gword ptr [rbp-0x280], rdi
+ mov gword ptr [rbp-0x288], rdi
;; size=30 bbWeight=0.50 PerfScore 2.38
G_M35920_IG74:
- mov dword ptr [rbp-0x278], edi
+ mov dword ptr [rbp-0x280], edi
;; size=6 bbWeight=0.50 PerfScore 0.50
G_M35920_IG75:
- mov dword ptr [rbp-0x274], edi
+ mov dword ptr [rbp-0x27C], edi
;; size=6 bbWeight=0.50 PerfScore 0.50
G_M35920_IG76:
- mov rdi, gword ptr [rbp-0x280]
- mov rsi, qword ptr [rbp-0x278]
+ mov rdi, gword ptr [rbp-0x288]
+ mov rsi, qword ptr [rbp-0x280]
mov rdx, qword ptr [rbp-0x48]
xor r8, r8
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonDocument:Parse(System.ReadOnlyMemory`1[ubyte],System.Text.Json.JsonReaderOptions,ubyte[],System.Text.Json.PooledByteBufferWriter):System.Text.Json.JsonDocument
call [rax]System.Text.Json.JsonDocument:Parse(System.ReadOnlyMemory`1[ubyte],System.Text.Json.JsonReaderOptions,ubyte[],System.Text.Json.PooledByteBufferWriter):System.Text.Json.JsonDocument
mov rsi, rax
mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M35920_IG93
;; size=49 bbWeight=0.50 PerfScore 5.00
G_M35920_IG77:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
call [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M35920_IG78:
mov edi, 6
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M35920_IG79:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M35920_IG80:
mov edi, 33
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M35920_IG81:
lea rdi, [rbp-0x138]
mov r8, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:GetFirstBufferSlow(System.Object,ubyte):System.ReadOnlyMemory`1[ubyte]:this
call [r8]System.Buffers.ReadOnlySequence`1[ubyte]:GetFirstBufferSlow(System.Object,ubyte):System.ReadOnlyMemory`1[ubyte]:this
- mov gword ptr [rbp-0x270], rax
- mov qword ptr [rbp-0x268], rdx
- mov rcx, gword ptr [rbp-0x2A8]
+ mov gword ptr [rbp-0x278], rax
+ mov qword ptr [rbp-0x270], rdx
+ mov rcx, gword ptr [rbp-0x2B0]
jmp G_M35920_IG70
;; size=46 bbWeight=0.50 PerfScore 4.38
G_M35920_IG82:
- mov rdi, gword ptr [rbp-0x270]
- mov rdx, gword ptr [rbp-0x270]
+ mov rdi, gword ptr [rbp-0x278]
+ mov rdx, gword ptr [rbp-0x278]
mov rdx, qword ptr [rdx]
mov rdx, qword ptr [rdx+0x40]
call [rdx+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
mov rsi, rax
mov r13d, edx
- mov rcx, gword ptr [rbp-0x2A8]
+ mov rcx, gword ptr [rbp-0x2B0]
jmp G_M35920_IG71
;; size=42 bbWeight=0.50 PerfScore 6.25
G_M35920_IG83:
- mov eax, dword ptr [rbp-0x298]
+ mov eax, dword ptr [rbp-0x2A0]
mov rsi, r14
mov edx, eax
lea rdi, [rbp-0x138]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:CopyToMultiSegment[ubyte](byref,System.Span`1[ubyte])
call [rax]System.Buffers.BuffersExtensions:CopyToMultiSegment[ubyte](byref,System.Span`1[ubyte])
jmp G_M35920_IG73
;; size=35 bbWeight=0.50 PerfScore 3.62
G_M35920_IG84:
- cmp r12d, dword ptr [rbp-0x298]
+ cmp r12d, dword ptr [rbp-0x2A0]
ja G_M35920_IG77
mov edx, r12d
mov rdi, r14
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
jmp G_M35920_IG73
;; size=39 bbWeight=0.50 PerfScore 4.50
G_M35920_IG85:
cmp dword ptr [rcx+0x08], r15d
jb G_M35920_IG79
- mov gword ptr [rbp-0x280], rcx
+ mov gword ptr [rbp-0x288], rcx
xor edi, edi
- mov dword ptr [rbp-0x278], edi
- mov dword ptr [rbp-0x274], r15d
+ mov dword ptr [rbp-0x280], edi
+ mov dword ptr [rbp-0x27C], r15d
jmp G_M35920_IG76
;; size=37 bbWeight=0.50 PerfScore 4.62
G_M35920_IG86:
test r12d, r12d
jne SHORT G_M35920_IG87
lea rdi, [rbp-0x138]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
jmp SHORT G_M35920_IG88
;; size=26 bbWeight=0.50 PerfScore 3.50
G_M35920_IG87:
mov esi, r12d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r12d
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rax, r14
;; size=46 bbWeight=0.50 PerfScore 3.12
G_M35920_IG88:
test rax, rax
jne SHORT G_M35920_IG91
xor rax, rax
- mov gword ptr [rbp-0x290], rax
+ mov gword ptr [rbp-0x298], rax
;; size=14 bbWeight=0.50 PerfScore 1.25
G_M35920_IG89:
- mov dword ptr [rbp-0x288], eax
+ mov dword ptr [rbp-0x290], eax
;; size=6 bbWeight=0.50 PerfScore 0.50
G_M35920_IG90:
- mov dword ptr [rbp-0x284], eax
+ mov dword ptr [rbp-0x28C], eax
jmp SHORT G_M35920_IG92
;; size=8 bbWeight=0.50 PerfScore 1.50
G_M35920_IG91:
- mov gword ptr [rbp-0x290], rax
+ mov gword ptr [rbp-0x298], rax
xor edi, edi
- mov dword ptr [rbp-0x288], edi
+ mov dword ptr [rbp-0x290], edi
mov edi, dword ptr [rax+0x08]
- mov dword ptr [rbp-0x284], edi
+ mov dword ptr [rbp-0x28C], edi
;; size=24 bbWeight=0.50 PerfScore 2.62
G_M35920_IG92:
- mov rdi, gword ptr [rbp-0x290]
- mov rsi, qword ptr [rbp-0x288]
- mov r15, bword ptr [rbp-0x2A0]
+ mov rdi, gword ptr [rbp-0x298]
+ mov rsi, qword ptr [rbp-0x290]
+ mov r15, bword ptr [rbp-0x2A8]
movzx rcx, byte ptr [r15+0x28]
mov rdx, qword ptr [rbp-0x48]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonDocument:ParseUnrented(System.ReadOnlyMemory`1[ubyte],System.Text.Json.JsonReaderOptions,ubyte):System.Text.Json.JsonDocument
call [rax]System.Text.Json.JsonDocument:ParseUnrented(System.ReadOnlyMemory`1[ubyte],System.Text.Json.JsonReaderOptions,ubyte):System.Text.Json.JsonDocument
mov rsi, rax
mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=53 bbWeight=0.50 PerfScore 5.38
G_M35920_IG93:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M35920_IG94:
- add rsp, 728
+ add rsp, 744
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M35920_IG95:
- add rsp, 728
+ add rsp, 744
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M35920_IG96:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M35920_IG97:
mov rdi, 0xD1FFAB1E ; System.ArgumentException
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_JsonDocumentDoesNotSupportComments():System.String
call [rax]System.SR:get_JsonDocumentDoesNotSupportComments():System.String
mov rbx, rax
mov edi, 0x327C
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdx, rax
mov rsi, rbx
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.ArgumentException:.ctor(System.String,System.String):this
call [rax]System.ArgumentException:.ctor(System.String,System.String):this
mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=83 bbWeight=0 PerfScore 0.00
G_M35920_IG98:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M35920_IG99:
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+0x300]
+ lea rbp, [rbp+0x310]
;; size=25 bbWeight=0 PerfScore 0.00
G_M35920_IG100:
- mov rdi, bword ptr [rbp-0x2A0]
- lea rsi, bword ptr [rbp-0x120]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ mov rdi, bword ptr [rbp-0x2A8]
+ lea rsi, [rbp-0x120]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
call CORINFO_HELP_RETHROW
int3
- ;; size=91 bbWeight=0 PerfScore 0.00
+ ;; size=30 bbWeight=0 PerfScore 0.00
G_M35920_IG101:
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+0x300]
+ lea rbp, [rbp+0x310]
;; size=25 bbWeight=0 PerfScore 0.00
G_M35920_IG102:
- mov esi, dword ptr [rbp-0x294]
- mov rdi, bword ptr [rbp-0x2F8]
+ mov esi, dword ptr [rbp-0x29C]
+ mov rdi, bword ptr [rbp-0x300]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:ClearWithoutReferences(byref,ulong)
call [rax]System.SpanHelpers:ClearWithoutReferences(byref,ulong)
mov rax, 0xD1FFAB1E ; code for System.Buffers.ArrayPool`1[ubyte]:get_Shared():System.Buffers.ArrayPool`1[ubyte]
call [rax]System.Buffers.ArrayPool`1[ubyte]:get_Shared():System.Buffers.ArrayPool`1[ubyte]
mov rdi, rax
- mov rsi, gword ptr [rbp-0x2A8]
+ mov rsi, gword ptr [rbp-0x2B0]
xor edx, edx
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Buffers.ArrayPool`1[ubyte]:Return(ubyte[],ubyte):this
call CORINFO_HELP_RETHROW
int3
;; size=65 bbWeight=0 PerfScore 0.00
RWD00 dd G_M35920_IG09 - G_M35920_IG02
dd G_M35920_IG52 - G_M35920_IG02
dd G_M35920_IG09 - G_M35920_IG02
dd G_M35920_IG52 - G_M35920_IG02
dd G_M35920_IG52 - G_M35920_IG02
dd G_M35920_IG52 - G_M35920_IG02
dd G_M35920_IG38 - G_M35920_IG02
dd G_M35920_IG37 - G_M35920_IG02
dd G_M35920_IG32 - G_M35920_IG02
dd G_M35920_IG32 - G_M35920_IG02
dd G_M35920_IG32 - G_M35920_IG02
-; Total bytes of code 3954, prolog size 110, PerfScore 535.67, instruction count 868, allocated bytes for code 3954 (MethodHash=e44f73af) for method System.Text.Json.JsonDocument:TryParseValue(byref,byref,ubyte,ubyte):ubyte (FullOpts)
+; Total bytes of code 3624, prolog size 119, PerfScore 451.42, instruction count 776, allocated bytes for code 3624 (MethodHash=e44f73af) for method System.Text.Json.JsonDocument:TryParseValue(byref,byref,ubyte,ubyte):ubyte (FullOpts)
-232 (-31.48 % of base) - System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+d__6:MoveNext():ubyte:this
; Assembly listing for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6:MoveNext():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; 2 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T03] ( 14, 20 ) ref -> [rbp-0x130] this class-hnd EH-live single-def <System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6>
-; V01 loc0 [V01,T09] ( 4, 6 ) ubyte -> rax
-; V02 loc1 [V02,T14] ( 3, 2.50) int -> rdi
+; V00 this [V00,T04] ( 14, 20 ) ref -> [rbp-0x130] this class-hnd EH-live single-def <System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6>
+; V01 loc0 [V01,T12] ( 4, 6 ) ubyte -> rax
+; V02 loc1 [V02,T17] ( 3, 2.50) int -> rsi
;* V03 loc2 [V03 ] ( 0, 0 ) struct (264) zero-ref do-not-enreg[SF] <System.Security.Cryptography.Asn1.GeneralNameAsn>
;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V05 tmp1 [V05,T12] ( 3, 3 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
-; V06 tmp2 [V06,T13] ( 3, 3 ) struct (280) [rbp-0x128] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+; V05 tmp1 [V05,T15] ( 3, 3 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+; V06 tmp2 [V06,T16] ( 3, 3 ) struct (280) [rbp-0x128] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Security.Cryptography.Asn1.GeneralNameAsn]>
;* V07 tmp3 [V07 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V08 tmp4 [V08,T07] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V09 tmp5 [V09,T00] ( 9, 72 ) byref -> r8 "Inlining Arg"
-; V10 tmp6 [V10,T04] ( 4, 16 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
-; V11 tmp7 [V11,T10] ( 3, 4.50) ref -> rsi "V03.[008..016)"
+;* V08 tmp4 [V08,T10] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V09 tmp5 [V09,T00] ( 9, 72 ) byref -> rbx "Inlining Arg"
+; V10 tmp6 [V10,T05] ( 4, 16 ) ref -> rsi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+; V11 tmp7 [V11,T13] ( 3, 4.50) ref -> rsi "V03.[008..016)"
;* V12 tmp8 [V12 ] ( 0, 0 ) ref -> zero-ref single-def "V06.[000..008)"
;* V13 tmp9 [V13 ] ( 0, 0 ) int -> zero-ref "V06.[008..012)"
-; V14 tmp10 [V14,T15] ( 2, 1 ) int -> r15 "V06.[012..016)"
-; V15 tmp11 [V15,T11] ( 4, 4 ) byref -> r8 single-def "Spilling address for field-by-field copy"
-; V16 tmp12 [V16,T01] ( 3, 24 ) ref -> rdi "arr expr"
-; V17 tmp13 [V17,T02] ( 3, 24 ) int -> rsi "index expr"
-; V18 PSPSym [V18,T16] ( 1, 1 ) long -> [rbp-0x140] do-not-enreg[V] "PSPSym"
-; V19 cse0 [V19,T06] ( 3, 12 ) int -> rsi "CSE #02: aggressive"
-; V20 cse1 [V20,T08] ( 2, 8 ) int -> rsi "CSE #03: aggressive"
-; V21 cse2 [V21,T05] ( 3, 12 ) ref -> r9 "CSE #04: aggressive"
+; V14 tmp10 [V14,T18] ( 2, 1 ) int -> r15 "V06.[012..016)"
+; V15 tmp11 [V15,T14] ( 4, 4 ) byref -> rbx single-def "Spilling address for field-by-field copy"
+; V16 tmp12 [V16,T01] ( 3, 24 ) ref -> rsi "arr expr"
+; V17 tmp13 [V17,T03] ( 3, 24 ) int -> rdx "index expr"
+; V18 PSPSym [V18,T19] ( 1, 1 ) long -> [rbp-0x140] do-not-enreg[V] "PSPSym"
+; V19 cse0 [V19,T09] ( 3, 12 ) int -> rdx "CSE #02: aggressive"
+; V20 cse1 [V20,T11] ( 2, 8 ) int -> rdx "CSE #03: aggressive"
+; V21 cse2 [V21,T08] ( 3, 12 ) ref -> r15 "CSE #04: aggressive"
+; V22 rat0 [V22,T02] ( 3, 24 ) byref -> rdx "fgMakeTemp is creating a new local variable"
+; V23 rat1 [V23,T06] ( 2, 16 ) byref -> rsi "fgMakeTemp is creating a new local variable"
+; V24 rat2 [V24,T07] ( 2, 16 ) byref -> rdx "argument with side effect"
;
; Lcl frame size = 304
G_M24674_IG01:
push rbp
push r15
push rbx
sub rsp, 304
lea rbp, [rsp+0x140]
xor eax, eax
mov qword ptr [rbp-0x128], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x120], xmm8
vmovdqa xmmword ptr [rbp-0x110], xmm8
mov rax, -240
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
vmovdqa xmmword ptr [rax+rbp], xmm8
vmovdqa xmmword ptr [rbp+rax+0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x140], rsp
mov gword ptr [rbp-0x130], rdi
- mov rdx, rdi
- ;; size=99 bbWeight=1 PerfScore 19.08
+ ;; size=96 bbWeight=1 PerfScore 18.83
G_M24674_IG02:
- mov edi, dword ptr [rdx+0x20]
- test edi, edi
+ mov esi, dword ptr [rdi+0x20]
+ test esi, esi
je SHORT G_M24674_IG04
;; size=7 bbWeight=1 PerfScore 3.25
G_M24674_IG03:
- cmp edi, 1
- je G_M24674_IG16
+ cmp esi, 1
+ je G_M24674_IG14
xor eax, eax
- jmp G_M24674_IG17
+ jmp G_M24674_IG15
;; size=16 bbWeight=0.50 PerfScore 1.75
G_M24674_IG04:
- mov dword ptr [rdx+0x20], -1
- mov rbx, gword ptr [rdx+0x10]
+ mov dword ptr [rdi+0x20], -1
+ mov rbx, gword ptr [rdi+0x10]
mov r15d, dword ptr [rbx+0x14]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_MEMZERO
lea rdi, bword ptr [rbp-0x118]
mov esi, 264
call [rax]CORINFO_HELP_MEMZERO
mov gword ptr [rbp-0x128], rbx
- mov rdx, gword ptr [rbp-0x130]
- lea r8, bword ptr [rdx+0x28]
- mov rdi, r8
- lea rsi, bword ptr [rbp-0x128]
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=152 bbWeight=0.50 PerfScore 17.62
-G_M24674_IG05:
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ mov rdi, gword ptr [rbp-0x130]
+ lea rbx, bword ptr [rdi+0x28]
+ mov rdi, rbx
+ lea rsi, [rbp-0x128]
+ mov edx, 160
+ call CORINFO_HELP_ASSIGN_STRUCT
xor edi, edi
- mov dword ptr [r8+0x08], edi
- mov dword ptr [r8+0x0C], r15d
- jmp G_M24674_IG16
- ;; size=60 bbWeight=0.50 PerfScore 8.12
-G_M24674_IG06:
- mov rsi, gword ptr [rdx+0x40]
+ mov dword ptr [rbx+0x08], edi
+ mov dword ptr [rbx+0x0C], r15d
+ mov rdi, gword ptr [rbp-0x130]
+ jmp G_M24674_IG14
+ ;; size=98 bbWeight=0.50 PerfScore 9.38
+G_M24674_IG05:
+ mov rdi, gword ptr [rbp-0x130]
+ mov rsi, gword ptr [rdi+0x40]
test rsi, rsi
- jne G_M24674_IG15
- ;; size=13 bbWeight=2 PerfScore 6.50
+ jne G_M24674_IG13
+ ;; size=20 bbWeight=2 PerfScore 8.50
+G_M24674_IG06:
+ lea rbx, bword ptr [rdi+0x28]
+ mov r15, gword ptr [rbx]
+ mov rsi, r15
+ mov edx, dword ptr [rbx+0x0C]
+ cmp edx, dword ptr [rsi+0x14]
+ jne SHORT G_M24674_IG07
+ mov edx, dword ptr [rbx+0x08]
+ cmp edx, dword ptr [rsi+0x10]
+ jae SHORT G_M24674_IG09
+ mov rsi, gword ptr [rsi+0x08]
+ cmp edx, dword ptr [rsi+0x08]
+ jae SHORT G_M24674_IG08
+ imul rdx, rdx, 264
+ lea rsi, bword ptr [rsi+rdx+0x10]
+ lea rdx, bword ptr [rbx+0x10]
+ cmp byte ptr [rdx], dl
+ mov rdi, rdx
+ mov edx, 152
+ call CORINFO_HELP_ASSIGN_STRUCT
+ inc dword ptr [rbx+0x08]
+ jmp SHORT G_M24674_IG05
+ ;; size=71 bbWeight=4 PerfScore 135.00
G_M24674_IG07:
- lea r8, bword ptr [rdx+0x28]
- mov r9, gword ptr [r8]
- mov rdi, r9
- mov esi, dword ptr [r8+0x0C]
- cmp esi, dword ptr [rdi+0x14]
- jne G_M24674_IG09
- mov esi, dword ptr [r8+0x08]
- cmp esi, dword ptr [rdi+0x10]
- jae G_M24674_IG11
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae G_M24674_IG10
- imul rsi, rsi, 264
- lea rsi, bword ptr [rdi+rsi+0x10]
- lea rdi, bword ptr [r8+0x10]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=141 bbWeight=4 PerfScore 177.00
-G_M24674_IG08:
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- inc dword ptr [r8+0x08]
- jmp G_M24674_IG06
- ;; size=56 bbWeight=4 PerfScore 72.00
-G_M24674_IG09:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
call [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M24674_IG10:
+G_M24674_IG08:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-G_M24674_IG11:
- mov esi, dword ptr [r9+0x10]
+G_M24674_IG09:
+ mov esi, dword ptr [r15+0x10]
inc esi
- mov dword ptr [r8+0x08], esi
- add r8, 16
- xor edi, edi
- mov qword ptr [r8], rdi
- mov esi, 256
- ;; size=24 bbWeight=4 PerfScore 20.00
-G_M24674_IG12:
- mov qword ptr [r8+rsi], rdi
- sub rsi, 8
- jne SHORT G_M24674_IG12
- mov dword ptr [rdx+0x20], -1
- lea rdi, bword ptr [rdx+0x28]
+ mov dword ptr [rbx+0x08], esi
+ add rbx, 16
xor esi, esi
- mov qword ptr [rdi], rsi
- mov eax, 272
- ;; size=31 bbWeight=4 PerfScore 21.00
-G_M24674_IG13:
- mov qword ptr [rdi+rax], rsi
+ mov qword ptr [rbx], rsi
+ mov eax, 256
+ ;; size=23 bbWeight=4 PerfScore 20.00
+G_M24674_IG10:
+ mov qword ptr [rbx+rax], rsi
sub rax, 8
- jne SHORT G_M24674_IG13
- ;; size=10 bbWeight=4 PerfScore 9.00
-G_M24674_IG14:
+ jne SHORT G_M24674_IG10
+ mov rdi, gword ptr [rbp-0x130]
+ mov dword ptr [rdi+0x20], -1
+ lea rsi, bword ptr [rdi+0x28]
xor eax, eax
- jmp SHORT G_M24674_IG17
- ;; size=4 bbWeight=4 PerfScore 9.00
-G_M24674_IG15:
- lea rdi, bword ptr [rdx+0x08]
+ mov qword ptr [rsi], rax
+ mov ecx, 272
+ ;; size=38 bbWeight=4 PerfScore 25.00
+G_M24674_IG11:
+ mov qword ptr [rsi+rcx], rax
+ sub rcx, 8
+ jne SHORT G_M24674_IG11
+ ;; size=10 bbWeight=4 PerfScore 9.00
+G_M24674_IG12:
+ jmp SHORT G_M24674_IG15
+ ;; size=2 bbWeight=4 PerfScore 8.00
+G_M24674_IG13:
+ lea rdi, bword ptr [rdi+0x08]
call CORINFO_HELP_ASSIGN_REF
- mov rdx, gword ptr [rbp-0x130]
- mov dword ptr [rdx+0x20], 1
+ mov rdi, gword ptr [rbp-0x130]
+ mov dword ptr [rdi+0x20], 1
mov eax, 1
- jmp SHORT G_M24674_IG17
+ jmp SHORT G_M24674_IG15
;; size=30 bbWeight=0.50 PerfScore 2.88
-G_M24674_IG16:
- mov dword ptr [rdx+0x20], -3
- jmp G_M24674_IG07
+G_M24674_IG14:
+ mov dword ptr [rdi+0x20], -3
+ jmp G_M24674_IG06
;; size=12 bbWeight=0.50 PerfScore 1.50
-G_M24674_IG17:
+G_M24674_IG15:
add rsp, 304
pop rbx
pop r15
pop rbp
ret
;; size=12 bbWeight=1 PerfScore 2.75
-G_M24674_IG18:
+G_M24674_IG16:
push rbp
push r15
push rbx
sub rsp, 16
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
lea rbp, [rbp+0x140]
;; size=22 bbWeight=0 PerfScore 0.00
-G_M24674_IG19:
+G_M24674_IG17:
mov rdi, gword ptr [rbp-0x130]
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6:System.IDisposable.Dispose():this
call [rax]System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6:System.IDisposable.Dispose():this
nop
;; size=20 bbWeight=0 PerfScore 0.00
-G_M24674_IG20:
+G_M24674_IG18:
add rsp, 16
pop rbx
pop r15
pop rbp
ret
;; size=9 bbWeight=0 PerfScore 0.00
-; Total bytes of code 737, prolog size 99, PerfScore 371.46, instruction count 184, allocated bytes for code 737 (MethodHash=50d49f9d) for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6:MoveNext():ubyte:this (FullOpts)
+; Total bytes of code 505, prolog size 96, PerfScore 245.83, instruction count 123, allocated bytes for code 505 (MethodHash=50d49f9d) for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateDnsNames>d__6:MoveNext():ubyte:this (FullOpts)
-229 (-24.49 % of base) - System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+d__8:MoveNext():ubyte:this
; Assembly listing for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8:MoveNext():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; 12 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T03] ( 14, 20 ) ref -> [rbp-0x140] this class-hnd EH-live single-def <System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8>
-; V01 loc0 [V01,T10] ( 4, 6 ) ubyte -> rax
-; V02 loc1 [V02,T20] ( 3, 2.50) int -> rdi
+; V00 this [V00,T04] ( 14, 20 ) ref -> [rbp-0x140] this class-hnd EH-live single-def <System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8>
+; V01 loc0 [V01,T13] ( 4, 6 ) ubyte -> rax
+; V02 loc1 [V02,T23] ( 3, 2.50) int -> rsi
;* V03 loc2 [V03 ] ( 0, 0 ) struct (264) zero-ref do-not-enreg[SF] ld-addr-op <System.Security.Cryptography.Asn1.GeneralNameAsn>
;* V04 loc3 [V04 ] ( 0, 0 ) struct (16) zero-ref <System.ReadOnlySpan`1[ubyte]>
;* V05 loc4 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlyMemory`1[ubyte]>
;# V06 OutArgs [V06 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V07 tmp1 [V07,T16] ( 3, 3 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Net.IPAddress>
-; V08 tmp2 [V08,T17] ( 3, 3 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
-; V09 tmp3 [V09,T18] ( 3, 3 ) struct (280) [rbp-0x138] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+; V07 tmp1 [V07,T19] ( 3, 3 ) ref -> r14 class-hnd exact "NewObj constructor temp" <System.Net.IPAddress>
+; V08 tmp2 [V08,T20] ( 3, 3 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+; V09 tmp3 [V09,T21] ( 3, 3 ) struct (280) [rbp-0x138] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Security.Cryptography.Asn1.GeneralNameAsn]>
;* V10 tmp4 [V10 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V11 tmp5 [V11 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
-; V12 tmp6 [V12,T14] ( 6, 3 ) byref -> r14 "Inline stloc first use temp"
-; V13 tmp7 [V13,T15] ( 6, 3 ) int -> r13 "Inline stloc first use temp"
+; V12 tmp6 [V12,T17] ( 6, 3 ) byref -> rbx "Inline stloc first use temp"
+; V13 tmp7 [V13,T18] ( 6, 3 ) int -> r15 "Inline stloc first use temp"
;* V14 tmp8 [V14 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V15 tmp9 [V15 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V16 tmp10 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Buffers.MemoryManager`1[ubyte]>
;* V17 tmp11 [V17 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V18 tmp12 [V18 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
-; V19 tmp13 [V19,T23] ( 3, 1.50) long -> rdi "Inline stloc first use temp"
+; V19 tmp13 [V19,T26] ( 3, 1.50) long -> rax "Inline stloc first use temp"
;* V20 tmp14 [V20 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V21 tmp15 [V21 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
;* V22 tmp16 [V22 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
-; V23 tmp17 [V23,T22] ( 2, 2 ) byref -> rax "Inlining Arg"
+; V23 tmp17 [V23,T25] ( 2, 2 ) byref -> rax "Inlining Arg"
;* V24 tmp18 [V24 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
-;* V25 tmp19 [V25,T08] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V26 tmp20 [V26,T00] ( 9, 72 ) byref -> r8 "Inlining Arg"
-; V27 tmp21 [V27,T05] ( 4, 16 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
+;* V25 tmp19 [V25,T11] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V26 tmp20 [V26,T00] ( 9, 72 ) byref -> rbx "Inlining Arg"
+; V27 tmp21 [V27,T06] ( 4, 16 ) ref -> rsi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Security.Cryptography.Asn1.GeneralNameAsn]>
;* V28 tmp22 [V28 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
;* V29 tmp23 [V29 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
;* V30 tmp24 [V30 ] ( 0, 0 ) ref -> zero-ref "field V05._object (fldOffset=0x0)" P-INDEP
;* V31 tmp25 [V31 ] ( 0, 0 ) int -> zero-ref "field V05._index (fldOffset=0x8)" P-INDEP
;* V32 tmp26 [V32 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0xc)" P-INDEP
;* V33 tmp27 [V33 ] ( 0, 0 ) byref -> zero-ref "field V11._reference (fldOffset=0x0)" P-INDEP
;* V34 tmp28 [V34 ] ( 0, 0 ) int -> zero-ref "field V11._length (fldOffset=0x8)" P-INDEP
-; V35 tmp29 [V35,T24] ( 2, 1 ) byref -> rbx "field V15._reference (fldOffset=0x0)" P-INDEP
-; V36 tmp30 [V36,T26] ( 2, 1 ) int -> r13 "field V15._length (fldOffset=0x8)" P-INDEP
+; V35 tmp29 [V35,T27] ( 2, 1 ) byref -> rbx "field V15._reference (fldOffset=0x0)" P-INDEP
+; V36 tmp30 [V36,T29] ( 2, 1 ) int -> r15 "field V15._length (fldOffset=0x8)" P-INDEP
;* V37 tmp31 [V37 ] ( 0, 0 ) byref -> zero-ref "field V17._reference (fldOffset=0x0)" P-DEP
;* V38 tmp32 [V38 ] ( 0, 0 ) int -> zero-ref "field V17._length (fldOffset=0x8)" P-DEP
-; V39 tmp33 [V39,T25] ( 2, 1 ) byref -> r14 "field V18._reference (fldOffset=0x0)" P-INDEP
-; V40 tmp34 [V40,T27] ( 2, 1 ) int -> r13 "field V18._length (fldOffset=0x8)" P-INDEP
+; V39 tmp33 [V39,T28] ( 2, 1 ) byref -> rbx "field V18._reference (fldOffset=0x0)" P-INDEP
+; V40 tmp34 [V40,T30] ( 2, 1 ) int -> r15 "field V18._length (fldOffset=0x8)" P-INDEP
;* V41 tmp35 [V41 ] ( 0, 0 ) byref -> zero-ref "field V24._reference (fldOffset=0x0)" P-INDEP
;* V42 tmp36 [V42 ] ( 0, 0 ) int -> zero-ref "field V24._length (fldOffset=0x8)" P-INDEP
-; V43 tmp37 [V43,T13] ( 2, 4 ) ubyte -> r8 "V03.[240..241)"
-; V44 tmp38 [V44,T11] ( 7, 5 ) ref -> rdi "V03.[248..256)"
-; V45 tmp39 [V45,T21] ( 2, 2.50) int -> rbx "V03.[256..260)"
-; V46 tmp40 [V46,T19] ( 3, 3 ) int -> r15 "V03.[260..264)"
+; V43 tmp37 [V43,T16] ( 2, 4 ) ubyte -> rcx "V03.[240..241)"
+; V44 tmp38 [V44,T14] ( 7, 5 ) ref -> rdx "V03.[248..256)"
+; V45 tmp39 [V45,T24] ( 2, 2.50) int -> r14 "V03.[256..260)"
+; V46 tmp40 [V46,T22] ( 3, 3 ) int -> r13 "V03.[260..264)"
;* V47 tmp41 [V47 ] ( 0, 0 ) ref -> zero-ref single-def "V09.[000..008)"
;* V48 tmp42 [V48 ] ( 0, 0 ) int -> zero-ref "V09.[008..012)"
-; V49 tmp43 [V49,T28] ( 2, 1 ) int -> r15 "V09.[012..016)"
-; V50 tmp44 [V50,T12] ( 4, 4 ) byref -> r8 single-def "Spilling address for field-by-field copy"
-; V51 tmp45 [V51,T04] ( 5, 20 ) byref -> r9 "Spilling address for field-by-field copy"
-; V52 tmp46 [V52,T01] ( 3, 24 ) ref -> rdi "arr expr"
-; V53 tmp47 [V53,T02] ( 3, 24 ) int -> rsi "index expr"
-; V54 PSPSym [V54,T29] ( 1, 1 ) long -> [rbp-0x150] do-not-enreg[V] "PSPSym"
-; V55 cse0 [V55,T07] ( 3, 12 ) int -> rsi "CSE #02: aggressive"
-; V56 cse1 [V56,T09] ( 2, 8 ) int -> rsi "CSE #03: aggressive"
-; V57 cse2 [V57,T06] ( 3, 12 ) ref -> r9 "CSE #04: aggressive"
+; V49 tmp43 [V49,T31] ( 2, 1 ) int -> r15 "V09.[012..016)"
+; V50 tmp44 [V50,T15] ( 4, 4 ) byref -> rbx single-def "Spilling address for field-by-field copy"
+; V51 tmp45 [V51,T05] ( 5, 20 ) byref -> rax "Spilling address for field-by-field copy"
+; V52 tmp46 [V52,T01] ( 3, 24 ) ref -> rsi "arr expr"
+; V53 tmp47 [V53,T03] ( 3, 24 ) int -> rdx "index expr"
+; V54 PSPSym [V54,T32] ( 1, 1 ) long -> [rbp-0x150] do-not-enreg[V] "PSPSym"
+; V55 cse0 [V55,T10] ( 3, 12 ) int -> rdx "CSE #02: aggressive"
+; V56 cse1 [V56,T12] ( 2, 8 ) int -> rdx "CSE #03: aggressive"
+; V57 cse2 [V57,T09] ( 3, 12 ) ref -> r15 "CSE #04: aggressive"
+; V58 rat0 [V58,T02] ( 3, 24 ) byref -> rdx "fgMakeTemp is creating a new local variable"
+; V59 rat1 [V59,T07] ( 2, 16 ) byref -> rsi "fgMakeTemp is creating a new local variable"
+; V60 rat2 [V60,T08] ( 2, 16 ) byref -> rdx "argument with side effect"
;
; Lcl frame size = 304
G_M43288_IG01:
push rbp
push r15
push r14
push r13
push rbx
sub rsp, 304
lea rbp, [rsp+0x150]
xor eax, eax
mov qword ptr [rbp-0x138], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x130], xmm8
vmovdqa xmmword ptr [rbp-0x120], xmm8
mov rax, -240
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
vmovdqa xmmword ptr [rax+rbp], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x150], rsp
mov gword ptr [rbp-0x140], rdi
- mov rdx, rdi
- ;; size=103 bbWeight=1 PerfScore 21.08
+ ;; size=100 bbWeight=1 PerfScore 20.83
G_M43288_IG02:
- mov edi, dword ptr [rdx+0x20]
- test edi, edi
+ mov esi, dword ptr [rdi+0x20]
+ test esi, esi
je SHORT G_M43288_IG04
;; size=7 bbWeight=1 PerfScore 3.25
G_M43288_IG03:
- cmp edi, 1
- je G_M43288_IG20
+ cmp esi, 1
+ je G_M43288_IG18
xor eax, eax
- jmp G_M43288_IG21
+ jmp G_M43288_IG19
;; size=16 bbWeight=0.50 PerfScore 1.75
G_M43288_IG04:
- mov dword ptr [rdx+0x20], -1
- mov rbx, gword ptr [rdx+0x10]
+ mov dword ptr [rdi+0x20], -1
+ mov rbx, gword ptr [rdi+0x10]
mov r15d, dword ptr [rbx+0x14]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_MEMZERO
lea rdi, bword ptr [rbp-0x128]
mov esi, 264
call [rax]CORINFO_HELP_MEMZERO
mov gword ptr [rbp-0x138], rbx
- mov rdx, gword ptr [rbp-0x140]
- lea r8, bword ptr [rdx+0x28]
- mov rdi, r8
- lea rsi, bword ptr [rbp-0x138]
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=152 bbWeight=0.50 PerfScore 17.62
-G_M43288_IG05:
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ mov rdi, gword ptr [rbp-0x140]
+ lea rbx, bword ptr [rdi+0x28]
+ mov rdi, rbx
+ lea rsi, [rbp-0x138]
+ mov edx, 160
+ call CORINFO_HELP_ASSIGN_STRUCT
xor edi, edi
- mov dword ptr [r8+0x08], edi
- mov dword ptr [r8+0x0C], r15d
- jmp G_M43288_IG20
- ;; size=60 bbWeight=0.50 PerfScore 8.12
+ mov dword ptr [rbx+0x08], edi
+ mov dword ptr [rbx+0x0C], r15d
+ mov rdi, gword ptr [rbp-0x140]
+ jmp G_M43288_IG18
+ ;; size=98 bbWeight=0.50 PerfScore 9.38
+G_M43288_IG05:
+ mov rdi, gword ptr [rbp-0x140]
+ lea rax, bword ptr [rdi+0x38]
+ movzx rcx, byte ptr [rax+0xF0]
+ mov rdx, gword ptr [rax+0xF8]
+ mov r14d, dword ptr [rax+0x100]
+ mov r13d, dword ptr [rax+0x104]
+ test ecx, ecx
+ jne G_M43288_IG14
+ ;; size=47 bbWeight=2 PerfScore 21.50
G_M43288_IG06:
- lea r9, bword ptr [rdx+0x38]
- movzx r8, byte ptr [r9+0xF0]
- mov rdi, gword ptr [r9+0xF8]
- mov ebx, dword ptr [r9+0x100]
- mov r15d, dword ptr [r9+0x104]
- test r8d, r8d
- jne G_M43288_IG16
- ;; size=42 bbWeight=2 PerfScore 19.50
+ lea rbx, bword ptr [rdi+0x28]
+ mov r15, gword ptr [rbx]
+ mov rsi, r15
+ mov edx, dword ptr [rbx+0x0C]
+ cmp edx, dword ptr [rsi+0x14]
+ jne SHORT G_M43288_IG07
+ mov edx, dword ptr [rbx+0x08]
+ cmp edx, dword ptr [rsi+0x10]
+ jae SHORT G_M43288_IG10
+ mov rsi, gword ptr [rsi+0x08]
+ cmp edx, dword ptr [rsi+0x08]
+ jae SHORT G_M43288_IG09
+ imul rdx, rdx, 264
+ lea rsi, bword ptr [rsi+rdx+0x10]
+ lea rdx, bword ptr [rbx+0x10]
+ cmp byte ptr [rdx], dl
+ mov rdi, rdx
+ mov edx, 152
+ call CORINFO_HELP_ASSIGN_STRUCT
+ inc dword ptr [rbx+0x08]
+ jmp SHORT G_M43288_IG05
+ ;; size=71 bbWeight=4 PerfScore 135.00
G_M43288_IG07:
- lea r8, bword ptr [rdx+0x28]
- mov r9, gword ptr [r8]
- mov rdi, r9
- mov esi, dword ptr [r8+0x0C]
- cmp esi, dword ptr [rdi+0x14]
- jne G_M43288_IG09
- mov esi, dword ptr [r8+0x08]
- cmp esi, dword ptr [rdi+0x10]
- jae G_M43288_IG12
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae G_M43288_IG11
- imul rsi, rsi, 264
- lea rsi, bword ptr [rdi+rsi+0x10]
- lea rdi, bword ptr [r8+0x10]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=141 bbWeight=4 PerfScore 177.00
-G_M43288_IG08:
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- inc dword ptr [r8+0x08]
- jmp G_M43288_IG06
- ;; size=56 bbWeight=4 PerfScore 72.00
-G_M43288_IG09:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
call [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M43288_IG10:
+G_M43288_IG08:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M43288_IG11:
+G_M43288_IG09:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
+G_M43288_IG10:
+ mov edx, dword ptr [r15+0x10]
+ inc edx
+ mov dword ptr [rbx+0x08], edx
+ add rbx, 16
+ xor eax, eax
+ mov qword ptr [rbx], rax
+ mov ecx, 256
+ ;; size=23 bbWeight=4 PerfScore 20.00
+G_M43288_IG11:
+ mov qword ptr [rbx+rcx], rax
+ sub rcx, 8
+ jne SHORT G_M43288_IG11
+ mov rdi, gword ptr [rbp-0x140]
+ mov dword ptr [rdi+0x20], -1
+ lea rax, bword ptr [rdi+0x28]
+ xor ecx, ecx
+ mov qword ptr [rax], rcx
+ mov edx, 272
+ ;; size=38 bbWeight=4 PerfScore 25.00
G_M43288_IG12:
- mov edi, dword ptr [r9+0x10]
- inc edi
- mov dword ptr [r8+0x08], edi
- add r8, 16
- xor edi, edi
- mov qword ptr [r8], rdi
- mov eax, 256
- ;; size=24 bbWeight=4 PerfScore 20.00
+ mov qword ptr [rax+rdx], rcx
+ sub rdx, 8
+ jne SHORT G_M43288_IG12
+ ;; size=10 bbWeight=4 PerfScore 9.00
G_M43288_IG13:
- mov qword ptr [r8+rax], rdi
- sub rax, 8
- jne SHORT G_M43288_IG13
- mov dword ptr [rdx+0x20], -1
- lea rdi, bword ptr [rdx+0x28]
xor eax, eax
- mov qword ptr [rdi], rax
- mov ecx, 272
- ;; size=31 bbWeight=4 PerfScore 21.00
+ jmp G_M43288_IG19
+ ;; size=7 bbWeight=4 PerfScore 9.00
G_M43288_IG14:
- mov qword ptr [rdi+rcx], rax
- sub rcx, 8
- jne SHORT G_M43288_IG14
- ;; size=10 bbWeight=4 PerfScore 9.00
-G_M43288_IG15:
- jmp G_M43288_IG21
- ;; size=5 bbWeight=4 PerfScore 8.00
-G_M43288_IG16:
- xor r14, r14
- xor r13d, r13d
- test rdi, rdi
- je SHORT G_M43288_IG19
- mov rax, qword ptr [rdi]
- test dword ptr [rax], 0xD1FFAB1E
+ xor rbx, rbx
+ xor r15d, r15d
+ test rdx, rdx
je SHORT G_M43288_IG17
- lea r14, bword ptr [rdi+0x10]
- mov r13d, dword ptr [rdi+0x08]
- jmp SHORT G_M43288_IG18
- ;; size=32 bbWeight=0.50 PerfScore 6.12
-G_M43288_IG17:
- mov rax, qword ptr [rdi]
+ mov rax, qword ptr [rdx]
+ test dword ptr [rax], 0xD1FFAB1E
+ je SHORT G_M43288_IG15
+ lea rbx, bword ptr [rdx+0x10]
+ mov r15d, dword ptr [rdx+0x08]
+ jmp SHORT G_M43288_IG16
+ ;; size=31 bbWeight=0.50 PerfScore 6.12
+G_M43288_IG15:
+ mov rdi, rdx
+ mov rax, qword ptr [rdx]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
- mov r14, rax
- mov r13d, edx
- mov rdx, gword ptr [rbp-0x140]
- ;; size=23 bbWeight=0.50 PerfScore 4.25
-G_M43288_IG18:
- and ebx, 0xD1FFAB1E
- mov edi, ebx
- mov eax, r15d
- add rax, rdi
+ mov rbx, rax
+ mov r15d, edx
+ mov rdi, gword ptr [rbp-0x140]
+ ;; size=26 bbWeight=0.50 PerfScore 4.38
+G_M43288_IG16:
+ and r14d, 0xD1FFAB1E
+ mov eax, r14d
mov ecx, r13d
- cmp rax, rcx
- ja G_M43288_IG10
- add r14, rdi
- mov r13d, r15d
- ;; size=32 bbWeight=0.50 PerfScore 1.50
-G_M43288_IG19:
- mov rbx, r14
+ add rcx, rax
+ mov edx, r15d
+ cmp rcx, rdx
+ ja G_M43288_IG08
+ add rbx, rax
+ mov r15d, r13d
+ ;; size=34 bbWeight=0.50 PerfScore 1.50
+G_M43288_IG17:
mov rdi, 0xD1FFAB1E ; System.Net.IPAddress
call CORINFO_HELP_NEWSFAST
- mov r15, rax
+ mov r14, rax
mov rsi, rbx
- mov edx, r13d
- mov rdi, r15
+ mov edx, r15d
+ mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Net.IPAddress:.ctor(System.ReadOnlySpan`1[ubyte]):this
call [rax]System.Net.IPAddress:.ctor(System.ReadOnlySpan`1[ubyte]):this
- mov rdx, gword ptr [rbp-0x140]
- lea rdi, bword ptr [rdx+0x08]
- mov rsi, r15
+ mov rdi, gword ptr [rbp-0x140]
+ lea rdi, bword ptr [rdi+0x08]
+ mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
- mov rdx, gword ptr [rbp-0x140]
- mov dword ptr [rdx+0x20], 1
+ mov rdi, gword ptr [rbp-0x140]
+ mov dword ptr [rdi+0x20], 1
mov eax, 1
- jmp SHORT G_M43288_IG21
- ;; size=82 bbWeight=0.50 PerfScore 6.38
-G_M43288_IG20:
- mov dword ptr [rdx+0x20], -3
- jmp G_M43288_IG07
+ jmp SHORT G_M43288_IG19
+ ;; size=79 bbWeight=0.50 PerfScore 6.25
+G_M43288_IG18:
+ mov dword ptr [rdi+0x20], -3
+ jmp G_M43288_IG06
;; size=12 bbWeight=0.50 PerfScore 1.50
-G_M43288_IG21:
+G_M43288_IG19:
add rsp, 304
pop rbx
pop r13
pop r14
pop r15
pop rbp
ret
;; size=16 bbWeight=1 PerfScore 3.75
-G_M43288_IG22:
+G_M43288_IG20:
push rbp
push r15
push r14
push r13
push rbx
sub rsp, 16
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
lea rbp, [rbp+0x150]
;; size=26 bbWeight=0 PerfScore 0.00
-G_M43288_IG23:
+G_M43288_IG21:
mov rdi, gword ptr [rbp-0x140]
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8:System.IDisposable.Dispose():this
call [rax]System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8:System.IDisposable.Dispose():this
nop
;; size=20 bbWeight=0 PerfScore 0.00
-G_M43288_IG24:
+G_M43288_IG22:
add rsp, 16
pop rbx
pop r13
pop r14
pop r15
pop rbp
ret
;; size=13 bbWeight=0 PerfScore 0.00
-; Total bytes of code 935, prolog size 103, PerfScore 401.83, instruction count 234, allocated bytes for code 935 (MethodHash=572a56e7) for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8:MoveNext():ubyte:this (FullOpts)
+; Total bytes of code 706, prolog size 100, PerfScore 278.21, instruction count 175, allocated bytes for code 706 (MethodHash=572a56e7) for method System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension+<EnumerateIPAddresses>d__8:MoveNext():ubyte:this (FullOpts)
-181 (-6.27 % of base) - System.Text.Json.JsonSerializer:GetReaderScopedToNextValue(byref,byref):System.Text.Json.Utf8JsonReader
; Assembly listing for method System.Text.Json.JsonSerializer:GetReaderScopedToNextValue(byref,byref):System.Text.Json.Utf8JsonReader (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; 73 single block inlinees; 18 inlinees without PGO data
; Final local variable assignments
;
-; V00 RetBuf [V00,T09] ( 6, 6 ) byref -> [rbp-0x3B0] EH-live single-def
+; V00 RetBuf [V00,T04] ( 8, 8 ) byref -> [rbp-0x3B0] EH-live single-def
; V01 arg0 [V01,T00] ( 46, 60 ) byref -> [rbp-0x3B8] EH-live single-def
; V02 arg1 [V02,T20] ( 3, 2 ) byref -> [rbp-0x3C0] EH-live single-def
;* V03 loc0 [V03 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <System.ReadOnlySpan`1[ubyte]>
; V04 loc1 [V04 ] ( 4, 4 ) struct (24) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V05 loc2 [V05,T40] ( 3, 3 ) ubyte -> rdi
;* V06 loc3 [V06 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <System.ReadOnlySpan`1[ubyte]>
; V07 loc4 [V07,T18] ( 4, 4 ) long -> r14
; V08 loc5 [V08,T41] ( 3, 3 ) long -> r15
; V09 loc6 [V09 ] ( 6, 6 ) struct (24) [rbp-0x58] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V10 loc7 [V10 ] ( 6, 6 ) struct (24) [rbp-0x70] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V11 loc8 [V11,T113] ( 2, 0 ) ubyte -> rdx
;* V12 loc9 [V12 ] ( 0, 0 ) ubyte -> zero-ref
; V13 loc10 [V13,T42] ( 3, 3 ) int -> r15
;* V14 loc11 [V14 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
;* V15 loc12 [V15 ] ( 0, 0 ) long -> zero-ref
; V16 loc13 [V16 ] ( 11, 5 ) struct (24) [rbp-0x88] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V17 loc14 [V17 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlyMemory`1[ubyte]>
;* V18 loc15 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Text.Json.JsonReaderException>
; V19 loc16 [V19 ] ( 8, 8 ) struct (56) [rbp-0xC0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Text.Json.JsonReaderState>
; V20 OutArgs [V20 ] ( 1, 1 ) struct (80) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V21 tmp1 [V21,T21] ( 2, 4 ) struct (24) [rbp-0xD8] do-not-enreg[S] must-init "non-inline candidate call" <System.Buffers.ReadOnlySequence`1[ubyte]>
; V22 tmp2 [V22 ] ( 2, 4 ) struct (192) [rbp-0x198] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V23 tmp3 [V23 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Text.Json.JsonReaderOptions>
;* V24 tmp4 [V24 ] ( 0, 0 ) struct (16) zero-ref "non-inline candidate call" <System.ReadOnlySpan`1[ubyte]>
; V25 tmp5 [V25 ] ( 2, 4 ) struct (192) [rbp-0x258] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V26 tmp6 [V26 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Text.Json.JsonReaderOptions>
; V27 tmp7 [V27,T43] ( 3, 3 ) long -> rcx
;* V28 tmp8 [V28 ] ( 0, 0 ) int -> zero-ref
; V29 tmp9 [V29,T107] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Text.Json.JsonReaderException>
-; V30 tmp10 [V30,T44] ( 2, 2 ) ubyte -> rdx "Inline return value spill temp"
+; V30 tmp10 [V30,T44] ( 2, 2 ) ubyte -> r15 "Inline return value spill temp"
; V31 tmp11 [V31,T78] ( 2, 2 ) struct (192) [rbp-0x318] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
-; V32 tmp12 [V32,T45] ( 3, 3 ) ubyte -> rdx "Inline stloc first use temp"
+; V32 tmp12 [V32,T45] ( 3, 3 ) ubyte -> r15 "Inline stloc first use temp"
; V33 tmp13 [V33,T46] ( 3, 3 ) ubyte -> rax "Inline stloc first use temp"
;* V34 tmp14 [V34,T79] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V35 tmp15 [V35,T08] ( 2, 9 ) int -> r15 "Inline stloc first use temp"
+; V35 tmp15 [V35,T09] ( 2, 9 ) int -> r15 "Inline stloc first use temp"
;* V36 tmp16 [V36 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V37 tmp17 [V37 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V38 tmp18 [V38 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V39 tmp19 [V39,T47] ( 3, 3 ) int -> r15 "Inline stloc first use temp"
; V40 tmp20 [V40,T48] ( 3, 3 ) ubyte -> rdi "Inline stloc first use temp"
;* V41 tmp21 [V41,T80] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V42 tmp22 [V42 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V43 tmp23 [V43,T01] ( 3, 20 ) int -> rsi "Inline stloc first use temp"
; V44 tmp24 [V44,T02] ( 3, 20 ) ubyte -> rax "Inline stloc first use temp"
;* V45 tmp25 [V45,T10] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V46 tmp26 [V46 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V47 tmp27 [V47,T49] ( 3, 3 ) int -> rax "Inline stloc first use temp"
; V48 tmp28 [V48,T50] ( 3, 3 ) ubyte -> r15 "Inline stloc first use temp"
;* V49 tmp29 [V49,T81] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V50 tmp30 [V50,T51] ( 3, 3 ) long -> rsi "Inline return value spill temp"
; V51 tmp31 [V51,T28] ( 3, 3 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V52 tmp32 [V52,T29] ( 3, 3 ) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V53 tmp33 [V53,T52] ( 3, 3 ) int -> r12 "Inline stloc first use temp"
; V54 tmp34 [V54,T53] ( 3, 3 ) int -> [rbp-0x31C] spill-single-def "Inline stloc first use temp"
; V55 tmp35 [V55,T71] ( 2, 2 ) ref -> [rbp-0x3C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V56 tmp36 [V56 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V57 tmp37 [V57 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V58 tmp38 [V58,T22] ( 2, 4 ) int -> r12 "Inlining Arg"
; V59 tmp39 [V59,T23] ( 2, 4 ) int -> rax "Inlining Arg"
;* V60 tmp40 [V60 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V61 tmp41 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
-; V62 tmp42 [V62,T04] ( 5, 10 ) byref -> rsi single-def "Inlining Arg"
+; V62 tmp42 [V62,T05] ( 5, 10 ) byref -> rsi single-def "Inlining Arg"
; V63 tmp43 [V63,T54] ( 3, 3 ) long -> registers "Inline return value spill temp"
; V64 tmp44 [V64,T30] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Object>
; V65 tmp45 [V65,T31] ( 3, 3 ) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V66 tmp46 [V66,T55] ( 3, 3 ) int -> r12 "Inline stloc first use temp"
; V67 tmp47 [V67,T56] ( 3, 3 ) int -> [rbp-0x320] spill-single-def "Inline stloc first use temp"
; V68 tmp48 [V68,T72] ( 2, 2 ) ref -> [rbp-0x3D0] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V69 tmp49 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V70 tmp50 [V70 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V71 tmp51 [V71 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V72 tmp52 [V72 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V73 tmp53 [V73,T12] ( 3, 6 ) int -> r14 "Inlining Arg"
; V74 tmp54 [V74,T13] ( 3, 6 ) int -> r15 "Inlining Arg"
;* V75 tmp55 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V76 tmp56 [V76 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V77 tmp57 [V77,T57] ( 3, 3 ) long -> rsi "Inline return value spill temp"
; V78 tmp58 [V78,T32] ( 3, 3 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V79 tmp59 [V79,T33] ( 3, 3 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V80 tmp60 [V80,T58] ( 3, 3 ) int -> r14 "Inline stloc first use temp"
; V81 tmp61 [V81,T59] ( 3, 3 ) int -> r13 "Inline stloc first use temp"
; V82 tmp62 [V82,T73] ( 2, 2 ) ref -> r12 class-hnd single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V83 tmp63 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V84 tmp64 [V84 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V85 tmp65 [V85,T24] ( 2, 4 ) int -> r14 "Inlining Arg"
; V86 tmp66 [V86,T25] ( 2, 4 ) int -> r13 "Inlining Arg"
;* V87 tmp67 [V87 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V88 tmp68 [V88 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
-; V89 tmp69 [V89,T05] ( 5, 10 ) byref -> rsi single-def "Inlining Arg"
+; V89 tmp69 [V89,T06] ( 5, 10 ) byref -> rsi single-def "Inlining Arg"
; V90 tmp70 [V90,T60] ( 3, 3 ) long -> rsi "Inline return value spill temp"
; V91 tmp71 [V91,T34] ( 3, 3 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V92 tmp72 [V92,T35] ( 3, 3 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V93 tmp73 [V93,T61] ( 3, 3 ) int -> r13 "Inline stloc first use temp"
; V94 tmp74 [V94,T62] ( 3, 3 ) int -> r12 "Inline stloc first use temp"
; V95 tmp75 [V95,T74] ( 2, 2 ) ref -> [rbp-0x3D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V96 tmp76 [V96 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V97 tmp77 [V97 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V98 tmp78 [V98 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V99 tmp79 [V99 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V100 tmp80 [V100,T14] ( 3, 6 ) int -> rax "Inlining Arg"
;* V101 tmp81 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V102 tmp82 [V102 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V103 tmp83 [V103,T63] ( 3, 3 ) long -> rcx "Inline return value spill temp"
; V104 tmp84 [V104,T36] ( 3, 3 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V105 tmp85 [V105,T37] ( 3, 3 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
; V106 tmp86 [V106,T64] ( 3, 3 ) int -> r14 "Inline stloc first use temp"
; V107 tmp87 [V107,T65] ( 3, 3 ) int -> r13 "Inline stloc first use temp"
; V108 tmp88 [V108,T75] ( 2, 2 ) ref -> r12 class-hnd single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V109 tmp89 [V109 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V110 tmp90 [V110 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
; V111 tmp91 [V111,T26] ( 2, 4 ) int -> r14 "Inlining Arg"
; V112 tmp92 [V112,T27] ( 2, 4 ) int -> r13 "Inlining Arg"
; V113 tmp93 [V113 ] ( 19, 0 ) struct (16) [rbp-0x330] do-not-enreg[SBR] multireg-ret must-init "Inline return value spill temp" <System.ReadOnlyMemory`1[ubyte]>
; V114 tmp94 [V114,T97] ( 5, 0 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Object>
; V115 tmp95 [V115,T93] ( 8, 0 ) int -> r15 "Inline stloc first use temp"
; V116 tmp96 [V116,T102] ( 3, 0 ) int -> r14 "Inline stloc first use temp"
; V117 tmp97 [V117,T103] ( 3, 0 ) ubyte -> r13 "Inline stloc first use temp"
;* V118 tmp98 [V118 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SR] multireg-ret "Return value temp for multireg return" <System.ReadOnlyMemory`1[ubyte]>
;* V119 tmp99 [V119 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
;* V120 tmp100 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlyMemory`1[ubyte]>
;* V121 tmp101 [V121 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V122 tmp102 [V122 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V123 tmp103 [V123 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
; V124 tmp104 [V124,T114] ( 2, 0 ) int -> rdi "Inlining Arg"
; V125 tmp105 [V125,T115] ( 2, 0 ) int -> rax "Inlining Arg"
; V126 tmp106 [V126,T104] ( 3, 0 ) int -> r14 "Inlining Arg"
;* V127 tmp107 [V127 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V128 tmp108 [V128 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
; V129 tmp109 [V129,T116] ( 2, 0 ) int -> r15 "Inlining Arg"
;* V130 tmp110 [V130 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V131 tmp111 [V131,T94] ( 6, 0 ) byref -> r15 "Inline stloc first use temp"
; V132 tmp112 [V132,T95] ( 6, 0 ) int -> r14 "Inline stloc first use temp"
;* V133 tmp113 [V133 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Object>
;* V134 tmp114 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V135 tmp115 [V135 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Buffers.MemoryManager`1[ubyte]>
;* V136 tmp116 [V136 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V137 tmp117 [V137 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V138 tmp118 [V138,T105] ( 3, 0 ) long -> r13 "Inline stloc first use temp"
;* V139 tmp119 [V139 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V140 tmp120 [V140 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "updating class info" <ubyte[]>
;* V141 tmp121 [V141 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
; V142 tmp122 [V142,T108] ( 2, 0 ) byref -> rdi single-def "Inlining Arg"
;* V143 tmp123 [V143 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
-; V144 tmp124 [V144,T06] ( 5, 10 ) struct (56) [rbp-0x368] do-not-enreg[SHF] must-init ld-addr-op EH-live "NewObj constructor temp" <System.Text.Json.JsonReaderState>
-; V145 tmp125 [V145,T07] ( 5, 10 ) struct (56) [rbp-0x3A0] do-not-enreg[SHF] must-init ld-addr-op EH-live "NewObj constructor temp" <System.Text.Json.JsonReaderState>
+; V144 tmp124 [V144,T07] ( 5, 10 ) struct (56) [rbp-0x368] do-not-enreg[SHF] must-init ld-addr-op EH-live "NewObj constructor temp" <System.Text.Json.JsonReaderState>
+; V145 tmp125 [V145,T08] ( 5, 10 ) struct (56) [rbp-0x3A0] do-not-enreg[SHF] must-init ld-addr-op EH-live "NewObj constructor temp" <System.Text.Json.JsonReaderState>
; V146 tmp126 [V146,T16] ( 5, 5 ) byref -> [rbp-0x3E0] do-not-enreg[M] EH-live "field V03._reference (fldOffset=0x0)" P-INDEP
; V147 tmp127 [V147,T11] ( 6, 6 ) int -> [rbp-0x3A4] do-not-enreg[Z] EH-live "field V03._length (fldOffset=0x8)" P-INDEP
; V148 tmp128 [V148,T92] ( 9, 0 ) byref -> rcx "field V06._reference (fldOffset=0x0)" P-INDEP
; V149 tmp129 [V149,T17] ( 7, 4 ) int -> r15 "field V06._length (fldOffset=0x8)" P-INDEP
; V150 tmp130 [V150 ] ( 3, 3 ) ref -> [rbp-0x58] do-not-enreg[X] addr-exposed "field V09._startObject (fldOffset=0x0)" P-DEP
; V151 tmp131 [V151 ] ( 3, 3 ) ref -> [rbp-0x50] do-not-enreg[X] addr-exposed "field V09._endObject (fldOffset=0x8)" P-DEP
; V152 tmp132 [V152 ] ( 3, 3 ) int -> [rbp-0x48] do-not-enreg[X] addr-exposed "field V09._startInteger (fldOffset=0x10)" P-DEP
; V153 tmp133 [V153 ] ( 3, 3 ) int -> [rbp-0x44] do-not-enreg[X] addr-exposed "field V09._endInteger (fldOffset=0x14)" P-DEP
; V154 tmp134 [V154 ] ( 3, 3 ) ref -> [rbp-0x70] do-not-enreg[X] addr-exposed "field V10._startObject (fldOffset=0x0)" P-DEP
; V155 tmp135 [V155 ] ( 3, 3 ) ref -> [rbp-0x68] do-not-enreg[X] addr-exposed "field V10._endObject (fldOffset=0x8)" P-DEP
; V156 tmp136 [V156 ] ( 3, 3 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed "field V10._startInteger (fldOffset=0x10)" P-DEP
; V157 tmp137 [V157 ] ( 3, 3 ) int -> [rbp-0x5C] do-not-enreg[X] addr-exposed "field V10._endInteger (fldOffset=0x14)" P-DEP
;* V158 tmp138 [V158 ] ( 0, 0 ) byref -> zero-ref single-def "field V14._reference (fldOffset=0x0)" P-INDEP
;* V159 tmp139 [V159 ] ( 0, 0 ) int -> zero-ref "field V14._length (fldOffset=0x8)" P-INDEP
; V160 tmp140 [V160 ] ( 5, 2 ) ref -> [rbp-0x88] do-not-enreg[X] addr-exposed "field V16._startObject (fldOffset=0x0)" P-DEP
; V161 tmp141 [V161 ] ( 5, 2 ) ref -> [rbp-0x80] do-not-enreg[X] addr-exposed "field V16._endObject (fldOffset=0x8)" P-DEP
; V162 tmp142 [V162 ] ( 5, 2 ) int -> [rbp-0x78] do-not-enreg[X] addr-exposed "field V16._startInteger (fldOffset=0x10)" P-DEP
; V163 tmp143 [V163 ] ( 5, 2 ) int -> [rbp-0x74] do-not-enreg[X] addr-exposed "field V16._endInteger (fldOffset=0x14)" P-DEP
;* V164 tmp144 [V164 ] ( 0, 0 ) ref -> zero-ref single-def "field V17._object (fldOffset=0x0)" P-INDEP
;* V165 tmp145 [V165 ] ( 0, 0 ) int -> zero-ref "field V17._index (fldOffset=0x8)" P-INDEP
;* V166 tmp146 [V166 ] ( 0, 0 ) int -> zero-ref "field V17._length (fldOffset=0xc)" P-INDEP
; V167 tmp147 [V167,T82] ( 2, 2 ) int -> rcx "field V23._maxDepth (fldOffset=0x0)" P-INDEP
; V168 tmp148 [V168,T83] ( 2, 2 ) ubyte -> rdi "field V23._commentHandling (fldOffset=0x4)" P-INDEP
; V169 tmp149 [V169,T84] ( 2, 2 ) ubyte -> rsi "field V23.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V170 tmp150 [V170 ] ( 0, 0 ) byref -> zero-ref single-def "field V24._reference (fldOffset=0x0)" P-INDEP
;* V171 tmp151 [V171 ] ( 0, 0 ) int -> zero-ref "field V24._length (fldOffset=0x8)" P-INDEP
; V172 tmp152 [V172,T85] ( 2, 2 ) int -> rcx "field V26._maxDepth (fldOffset=0x0)" P-INDEP
; V173 tmp153 [V173,T86] ( 2, 2 ) ubyte -> rdi "field V26._commentHandling (fldOffset=0x4)" P-INDEP
; V174 tmp154 [V174,T87] ( 2, 2 ) ubyte -> rsi "field V26.<AllowTrailingCommas>k__BackingField (fldOffset=0x5)" P-INDEP
;* V175 tmp155 [V175 ] ( 0, 0 ) ref -> zero-ref "field V38._array (fldOffset=0x0)" P-INDEP
;* V176 tmp156 [V176 ] ( 0, 0 ) long -> zero-ref "field V38._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V177 tmp157 [V177,T66] ( 3, 3 ) int -> rax "field V38._currentDepth (fldOffset=0x10)" P-INDEP
;* V178 tmp158 [V178 ] ( 0, 0 ) ref -> zero-ref "field V42._array (fldOffset=0x0)" P-INDEP
;* V179 tmp159 [V179 ] ( 0, 0 ) long -> zero-ref "field V42._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V180 tmp160 [V180,T03] ( 3, 20 ) int -> rcx "field V42._currentDepth (fldOffset=0x10)" P-INDEP
;* V181 tmp161 [V181 ] ( 0, 0 ) ref -> zero-ref "field V46._array (fldOffset=0x0)" P-INDEP
;* V182 tmp162 [V182 ] ( 0, 0 ) long -> zero-ref "field V46._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V183 tmp163 [V183,T67] ( 3, 3 ) int -> rsi "field V46._currentDepth (fldOffset=0x10)" P-INDEP
; V184 tmp164 [V184,T38] ( 3, 3 ) byref -> registers "field V60._reference (fldOffset=0x0)" P-INDEP
; V185 tmp165 [V185,T68] ( 3, 3 ) int -> registers "field V60._length (fldOffset=0x8)" P-INDEP
;* V186 tmp166 [V186 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V187 tmp167 [V187 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
; V188 tmp168 [V188,T76] ( 2, 2 ) byref -> rdi single-def "field V75._reference (fldOffset=0x0)" P-INDEP
; V189 tmp169 [V189,T88] ( 2, 2 ) int -> r15 "field V75._length (fldOffset=0x8)" P-INDEP
; V190 tmp170 [V190,T39] ( 3, 3 ) byref -> rsi "field V87._reference (fldOffset=0x0)" P-INDEP
; V191 tmp171 [V191,T69] ( 3, 3 ) int -> rdi "field V87._length (fldOffset=0x8)" P-INDEP
;* V192 tmp172 [V192 ] ( 0, 0 ) byref -> zero-ref single-def "field V88._reference (fldOffset=0x0)" P-INDEP
;* V193 tmp173 [V193 ] ( 0, 0 ) int -> zero-ref "field V88._length (fldOffset=0x8)" P-INDEP
; V194 tmp174 [V194,T77] ( 2, 2 ) byref -> rsi single-def "field V101._reference (fldOffset=0x0)" P-INDEP
; V195 tmp175 [V195,T89] ( 2, 2 ) int -> r15 "field V101._length (fldOffset=0x8)" P-INDEP
; V196 tmp176 [V196,T91] ( 10, 0 ) ref -> [rbp-0x330] do-not-enreg[] "field V113._object (fldOffset=0x0)" P-DEP
; V197 tmp177 [V197,T98] ( 5, 0 ) int -> [rbp-0x328] do-not-enreg[] "field V113._index (fldOffset=0x8)" P-DEP
; V198 tmp178 [V198,T96] ( 6, 0 ) int -> [rbp-0x324] do-not-enreg[] "field V113._length (fldOffset=0xc)" P-DEP
; V199 tmp179 [V199,T101] ( 3, 0 ) ref -> r12 single-def "field V119._object (fldOffset=0x0)" P-INDEP
; V200 tmp180 [V200,T106] ( 3, 0 ) int -> rdi "field V119._index (fldOffset=0x8)" P-INDEP
; V201 tmp181 [V201,T100] ( 4, 0 ) int -> rax "field V119._length (fldOffset=0xc)" P-INDEP
;* V202 tmp182 [V202 ] ( 0, 0 ) ref -> zero-ref single-def "field V120._object (fldOffset=0x0)" P-INDEP
;* V203 tmp183 [V203 ] ( 0, 0 ) int -> zero-ref "field V120._index (fldOffset=0x8)" P-INDEP
;* V204 tmp184 [V204 ] ( 0, 0 ) int -> zero-ref "field V120._length (fldOffset=0xc)" P-INDEP
; V205 tmp185 [V205,T109] ( 2, 0 ) ref -> r12 single-def "field V122._object (fldOffset=0x0)" P-INDEP
; V206 tmp186 [V206,T117] ( 2, 0 ) int -> rdi "field V122._index (fldOffset=0x8)" P-INDEP
; V207 tmp187 [V207,T118] ( 2, 0 ) int -> rax "field V122._length (fldOffset=0xc)" P-INDEP
; V208 tmp188 [V208,T110] ( 2, 0 ) ref -> rdi single-def "field V127._object (fldOffset=0x0)" P-INDEP
; V209 tmp189 [V209,T119] ( 2, 0 ) int -> r15 "field V127._index (fldOffset=0x8)" P-INDEP
; V210 tmp190 [V210,T120] ( 2, 0 ) int -> r14 "field V127._length (fldOffset=0xc)" P-INDEP
;* V211 tmp191 [V211 ] ( 0, 0 ) byref -> zero-ref "field V130._reference (fldOffset=0x0)" P-INDEP
;* V212 tmp192 [V212 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
; V213 tmp193 [V213,T111] ( 2, 0 ) byref -> rcx single-def "field V134._reference (fldOffset=0x0)" P-INDEP
; V214 tmp194 [V214,T121] ( 2, 0 ) int -> r15 "field V134._length (fldOffset=0x8)" P-INDEP
;* V215 tmp195 [V215 ] ( 0, 0 ) byref -> zero-ref "field V136._reference (fldOffset=0x0)" P-DEP
;* V216 tmp196 [V216 ] ( 0, 0 ) int -> zero-ref "field V136._length (fldOffset=0x8)" P-DEP
; V217 tmp197 [V217,T112] ( 2, 0 ) byref -> r15 "field V137._reference (fldOffset=0x0)" P-INDEP
; V218 tmp198 [V218,T122] ( 2, 0 ) int -> r14 "field V137._length (fldOffset=0x8)" P-INDEP
;* V219 tmp199 [V219 ] ( 0, 0 ) byref -> zero-ref single-def "field V143._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp200 [V220 ] ( 0, 0 ) int -> zero-ref "field V143._length (fldOffset=0x8)" P-INDEP
; V221 tmp201 [V221,T99] ( 4, 0 ) ref -> rax single-def "BlockOp address local"
; V222 PSPSym [V222,T90] ( 1, 1 ) long -> [rbp-0x3F0] do-not-enreg[V] "PSPSym"
; V223 cse0 [V223,T19] ( 4, 4 ) int -> r15 "CSE #01: moderate"
; V224 cse1 [V224,T70] ( 3, 3 ) int -> rdi "CSE #02: conservative"
; V225 rat0 [V225,T15] ( 3, 5.83) int -> rdi "ReplaceWithLclVar is creating a new local variable"
;
; Lcl frame size = 1048
G_M17667_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 0x418
lea rbp, [rsp+0x440]
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x3A0], xmm8
mov rax, -864
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
mov qword ptr [rbp-0x3F0], rsp
mov bword ptr [rbp-0x3B0], rdi
mov bword ptr [rbp-0x3B8], rsi
mov bword ptr [rbp-0x3C0], rdx
mov rbx, rdi
mov r8, rsi
;; size=110 bbWeight=1 PerfScore 22.08
G_M17667_IG02:
xor rdi, rdi
mov bword ptr [rbp-0x3E0], rdi
;; size=9 bbWeight=1 PerfScore 1.25
G_M17667_IG03:
mov dword ptr [rbp-0x3A4], edi
;; size=6 bbWeight=1 PerfScore 1.00
G_M17667_IG04:
movzx rdi, byte ptr [r8+0x28]
test edi, edi
je SHORT G_M17667_IG05
cmp edi, 5
jne SHORT G_M17667_IG06
;; size=14 bbWeight=1 PerfScore 4.50
G_M17667_IG05:
mov rdi, r8
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
test eax, eax
je SHORT G_M17667_IG08
;; size=19 bbWeight=1 PerfScore 4.75
G_M17667_IG06:
mov r8, bword ptr [rbp-0x3B8]
movzx r15, byte ptr [r8+0x28]
lea edi, [r15-0x01]
cmp edi, 10
ja G_M17667_IG67
;; size=25 bbWeight=1 PerfScore 4.75
G_M17667_IG07:
mov edi, edi
lea rax, [reloc @RWD00]
mov eax, dword ptr [rax+4*rdi]
lea rcx, G_M17667_IG02
add rax, rcx
jmp rax
;; size=24 bbWeight=0.92 PerfScore 5.50
G_M17667_IG08:
xor rcx, rcx
xor r8d, r8d
mov rdi, bword ptr [rbp-0x3B8]
mov esi, 38
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
;; size=32 bbWeight=0 PerfScore 0.00
G_M17667_IG09:
mov r14, qword ptr [r8+0x18]
cmp byte ptr [r8+0x24], 0
je G_M17667_IG17
cmp r15d, 5
jne SHORT G_M17667_IG10
mov rdi, r8
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov r8, bword ptr [rbp-0x3B8]
;; size=43 bbWeight=1 PerfScore 11.75
G_M17667_IG10:
movzx rdi, byte ptr [r8+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M17667_IG11
cmp eax, 3
jne G_M17667_IG21
;; size=21 bbWeight=1 PerfScore 4.75
G_M17667_IG11:
mov eax, dword ptr [r8+0x58]
mov r15d, eax
cmp edi, 1
je SHORT G_M17667_IG12
cmp edi, 3
jne SHORT G_M17667_IG13
;; size=17 bbWeight=1 PerfScore 4.75
G_M17667_IG12:
lea r15d, [rax-0x01]
;; size=4 bbWeight=1 PerfScore 0.50
G_M17667_IG13:
mov r8, bword ptr [rbp-0x3B8]
mov rdi, r8
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov rdi, bword ptr [rbp-0x3B8]
mov ecx, dword ptr [rdi+0x58]
mov esi, ecx
movzx rax, byte ptr [rdi+0x28]
cmp eax, 1
je SHORT G_M17667_IG15
;; size=43 bbWeight=8 PerfScore 88.00
G_M17667_IG14:
cmp eax, 3
jne SHORT G_M17667_IG16
;; size=5 bbWeight=4 PerfScore 5.00
G_M17667_IG15:
lea esi, [rcx-0x01]
;; size=3 bbWeight=4 PerfScore 2.00
G_M17667_IG16:
cmp r15d, esi
jl SHORT G_M17667_IG13
- jmp G_M17667_IG21
- ;; size=10 bbWeight=8 PerfScore 26.00
+ jmp SHORT G_M17667_IG21
+ ;; size=7 bbWeight=8 PerfScore 26.00
G_M17667_IG17:
lea rdi, bword ptr [rbp-0x318]
mov rsi, r8
mov ecx, 24
rep movsq
mov esi, dword ptr [r8+0x58]
mov eax, esi
cmp r15d, 1
je SHORT G_M17667_IG18
cmp r15d, 3
jne SHORT G_M17667_IG19
;; size=36 bbWeight=1 PerfScore 30.75
G_M17667_IG18:
lea eax, [rsi-0x01]
;; size=3 bbWeight=1 PerfScore 0.50
G_M17667_IG19:
mov rdi, r8
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov edx, eax
- test edx, edx
+ mov r15d, eax
+ test r15d, r15d
jne SHORT G_M17667_IG20
mov rdi, bword ptr [rbp-0x3B8]
- lea rsi, bword ptr [rbp-0x318]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=108 bbWeight=1 PerfScore 50.00
+ lea rsi, [rbp-0x318]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=49 bbWeight=1 PerfScore 8.00
G_M17667_IG20:
- test edx, edx
+ test r15d, r15d
je G_M17667_IG68
- ;; size=8 bbWeight=1 PerfScore 1.25
+ ;; size=9 bbWeight=1 PerfScore 1.25
G_M17667_IG21:
mov rdi, bword ptr [rbp-0x3B8]
mov r15, qword ptr [rdi+0x10]
movsxd r13, dword ptr [rdi+0x20]
add r15, r13
sub r15, r14
;; size=21 bbWeight=1 PerfScore 7.50
G_M17667_IG22:
vmovdqu xmm0, xmmword ptr [rdi+0x80]
vmovdqu xmmword ptr [rbp-0x58], xmm0
mov rsi, qword ptr [rdi+0x90]
mov qword ptr [rbp-0x48], rsi
;; size=24 bbWeight=1 PerfScore 8.00
G_M17667_IG23:
mov rsi, gword ptr [rbp-0x58]
mov r13, gword ptr [rbp-0x50]
mov r12d, dword ptr [rbp-0x48]
and r12d, 0xD1FFAB1E
mov eax, dword ptr [rbp-0x44]
and eax, 0xD1FFAB1E
mov dword ptr [rbp-0x31C], eax
cmp rsi, r13
je SHORT G_M17667_IG24
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
mov gword ptr [rbp-0x3C8], rax
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, dword ptr [rbp-0x31C]
add rsi, qword ptr [rax+0x10]
movsxd rdi, r12d
mov r12, gword ptr [rbp-0x3C8]
add rdi, qword ptr [r12+0x10]
sub rsi, rdi
jmp SHORT G_M17667_IG25
;; size=123 bbWeight=1 PerfScore 27.50
G_M17667_IG24:
mov eax, dword ptr [rbp-0x31C]
sub eax, r12d
movsxd rsi, eax
;; size=12 bbWeight=1 PerfScore 1.50
G_M17667_IG25:
test rsi, rsi
jne G_M17667_IG30
mov rdi, bword ptr [rbp-0x3B8]
lea rsi, bword ptr [rdi+0x80]
mov rax, gword ptr [rsi]
mov r13, gword ptr [rsi+0x08]
mov r12d, dword ptr [rsi+0x10]
and r12d, 0xD1FFAB1E
mov ecx, dword ptr [rsi+0x14]
and ecx, 0xD1FFAB1E
mov dword ptr [rbp-0x320], ecx
cmp rax, r13
je SHORT G_M17667_IG26
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
mov gword ptr [rbp-0x3D0], rax
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rdi, dword ptr [rbp-0x320]
add rdi, qword ptr [rax+0x10]
movsxd rsi, r12d
mov r12, gword ptr [rbp-0x3D0]
add rsi, qword ptr [r12+0x10]
sub rdi, rsi
jmp SHORT G_M17667_IG27
;; size=149 bbWeight=1 PerfScore 34.50
G_M17667_IG26:
mov ecx, dword ptr [rbp-0x320]
sub ecx, r12d
movsxd rsi, ecx
mov rdi, rsi
;; size=15 bbWeight=1 PerfScore 1.75
G_M17667_IG27:
test rdi, rdi
je SHORT G_M17667_IG28
xor rdi, rdi
xor esi, esi
jmp SHORT G_M17667_IG29
;; size=11 bbWeight=1 PerfScore 3.75
G_M17667_IG28:
mov rdi, bword ptr [rbp-0x3B8]
mov rsi, bword ptr [rdi+0x30]
mov edx, dword ptr [rdi+0x38]
mov rdi, rsi
mov esi, edx
;; size=19 bbWeight=1 PerfScore 5.50
G_M17667_IG29:
movsxd rdx, r14d
cmp r14, rdx
jne G_M17667_IG49
movsxd rdx, r15d
cmp r15, rdx
jne G_M17667_IG49
mov edx, r14d
mov ecx, r15d
add rdx, rcx
mov esi, esi
cmp rdx, rsi
ja G_M17667_IG62
mov esi, r14d
add rdi, rsi
mov bword ptr [rbp-0x3E0], rdi
mov dword ptr [rbp-0x3A4], r15d
jmp G_M17667_IG69
;; size=69 bbWeight=1 PerfScore 9.75
G_M17667_IG30:
lea rdi, [rbp-0x58]
lea rsi, [rbp-0x40]
mov rdx, r14
mov rcx, r15
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
jmp G_M17667_IG69
;; size=31 bbWeight=1 PerfScore 6.75
G_M17667_IG31:
cmp byte ptr [r8+0x2D], 0
je SHORT G_M17667_IG34
;; size=7 bbWeight=1 PerfScore 4.00
G_M17667_IG32:
vmovdqu xmm0, xmmword ptr [r8+0xA8]
vmovdqu xmmword ptr [rbp-0x40], xmm0
mov rsi, qword ptr [r8+0xB8]
mov qword ptr [rbp-0x30], rsi
;; size=25 bbWeight=1 PerfScore 8.00
G_M17667_IG33:
jmp G_M17667_IG69
;; size=5 bbWeight=1 PerfScore 2.00
G_M17667_IG34:
mov rsi, bword ptr [r8+0x98]
mov bword ptr [rbp-0x3E0], rsi
mov esi, dword ptr [r8+0xA0]
mov dword ptr [rbp-0x3A4], esi
jmp G_M17667_IG69
;; size=32 bbWeight=1 PerfScore 8.00
G_M17667_IG35:
vmovdqu xmm0, xmmword ptr [r8+0x80]
vmovdqu xmmword ptr [rbp-0x70], xmm0
mov rsi, qword ptr [r8+0x90]
mov qword ptr [rbp-0x60], rsi
;; size=25 bbWeight=1 PerfScore 8.00
G_M17667_IG36:
mov rsi, gword ptr [rbp-0x70]
mov r15, gword ptr [rbp-0x68]
mov r14d, dword ptr [rbp-0x60]
and r14d, 0xD1FFAB1E
mov r13d, dword ptr [rbp-0x5C]
and r13d, 0xD1FFAB1E
cmp rsi, r15
je SHORT G_M17667_IG37
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
mov r12, rax
mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, r13d
add rsi, qword ptr [rax+0x10]
movsxd rdi, r14d
add rdi, qword ptr [r12+0x10]
sub rsi, rdi
jmp SHORT G_M17667_IG38
;; size=105 bbWeight=1 PerfScore 22.00
G_M17667_IG37:
sub r13d, r14d
movsxd rsi, r13d
;; size=6 bbWeight=1 PerfScore 0.50
G_M17667_IG38:
test rsi, rsi
jne G_M17667_IG43
mov r8, bword ptr [rbp-0x3B8]
mov r15d, dword ptr [r8+0xA0]
add r15d, 2
lea rsi, bword ptr [r8+0x80]
mov rdi, gword ptr [rsi]
mov r14, gword ptr [rsi+0x08]
mov r13d, dword ptr [rsi+0x10]
and r13d, 0xD1FFAB1E
mov r12d, dword ptr [rsi+0x14]
and r12d, 0xD1FFAB1E
cmp rdi, r14
je SHORT G_M17667_IG39
mov rsi, rdi
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
mov gword ptr [rbp-0x3D8], rax
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, r12d
add rsi, qword ptr [rax+0x10]
movsxd rdi, r13d
mov r13, gword ptr [rbp-0x3D8]
add rdi, qword ptr [r13+0x10]
sub rsi, rdi
jmp SHORT G_M17667_IG40
;; size=151 bbWeight=1 PerfScore 33.00
G_M17667_IG39:
sub r12d, r13d
movsxd rsi, r12d
;; size=6 bbWeight=1 PerfScore 0.50
G_M17667_IG40:
test rsi, rsi
je SHORT G_M17667_IG41
xor rsi, rsi
xor edi, edi
jmp SHORT G_M17667_IG42
;; size=11 bbWeight=1 PerfScore 3.75
G_M17667_IG41:
mov r8, bword ptr [rbp-0x3B8]
mov rsi, bword ptr [r8+0x30]
mov edi, dword ptr [r8+0x38]
;; size=15 bbWeight=1 PerfScore 5.00
G_M17667_IG42:
mov r8, bword ptr [rbp-0x3B8]
mov eax, dword ptr [r8+0x18]
mov ecx, eax
mov edx, r15d
add rcx, rdx
mov edi, edi
cmp rcx, rdi
ja G_M17667_IG62
mov edi, eax
add rsi, rdi
mov bword ptr [rbp-0x3E0], rsi
mov dword ptr [rbp-0x3A4], r15d
jmp G_M17667_IG69
;; size=54 bbWeight=1 PerfScore 9.75
G_M17667_IG43:
mov r8, bword ptr [rbp-0x3B8]
cmp byte ptr [r8+0x2D], 0
jne SHORT G_M17667_IG44
mov r15d, dword ptr [r8+0xA0]
lea esi, [r15+0x02]
movsxd rcx, esi
jmp G_M17667_IG48
;; size=33 bbWeight=1 PerfScore 9.75
G_M17667_IG44:
vmovdqu xmm0, xmmword ptr [r8+0xA8]
vmovdqu xmmword ptr [rbp-0x88], xmm0
mov rsi, qword ptr [r8+0xB8]
mov qword ptr [rbp-0x78], rsi
;; size=28 bbWeight=1 PerfScore 8.00
G_M17667_IG45:
mov rsi, gword ptr [rbp-0x88]
mov r15, gword ptr [rbp-0x80]
mov r14d, dword ptr [rbp-0x78]
and r14d, 0xD1FFAB1E
mov r13d, dword ptr [rbp-0x74]
and r13d, 0xD1FFAB1E
cmp rsi, r15
je SHORT G_M17667_IG46
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
mov r12, rax
mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
movsxd rcx, r13d
add rcx, qword ptr [rax+0x10]
movsxd rdx, r14d
add rdx, qword ptr [r12+0x10]
sub rcx, rdx
jmp SHORT G_M17667_IG47
;; size=108 bbWeight=1 PerfScore 22.00
G_M17667_IG46:
sub r13d, r14d
movsxd rcx, r13d
;; size=6 bbWeight=1 PerfScore 0.50
G_M17667_IG47:
add rcx, 2
mov r8, bword ptr [rbp-0x3B8]
;; size=11 bbWeight=1 PerfScore 1.25
G_M17667_IG48:
mov rdx, qword ptr [r8+0x18]
lea rsi, [rbp-0x40]
lea rdi, [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:Slice(long,long):System.Buffers.ReadOnlySequence`1[ubyte]:this
jmp G_M17667_IG69
;; size=29 bbWeight=1 PerfScore 8.25
G_M17667_IG49:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M17667_IG50:
vmovdqu xmm0, xmmword ptr [r8+0xA8]
vmovdqu xmmword ptr [rbp-0x88], xmm0
mov rsi, qword ptr [r8+0xB8]
mov qword ptr [rbp-0x78], rsi
;; size=28 bbWeight=0 PerfScore 0.00
G_M17667_IG51:
mov rsi, gword ptr [rbp-0x88]
test rsi, rsi
jne SHORT G_M17667_IG54
xor rsi, rsi
mov gword ptr [rbp-0x330], rsi
;; size=21 bbWeight=0 PerfScore 0.00
G_M17667_IG52:
mov dword ptr [rbp-0x328], esi
;; size=6 bbWeight=0 PerfScore 0.00
G_M17667_IG53:
mov dword ptr [rbp-0x324], esi
jmp G_M17667_IG59
;; size=11 bbWeight=0 PerfScore 0.00
G_M17667_IG54:
mov r15d, dword ptr [rbp-0x78]
mov r14d, dword ptr [rbp-0x74]
cmp rsi, gword ptr [rbp-0x80]
setne r13b
movzx r13, r13b
mov edi, r15d
or edi, r14d
jl G_M17667_IG58
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
mov r12, gword ptr [rax+0x18]
mov edi, dword ptr [rax+0x20]
mov eax, dword ptr [rax+0x24]
test r13d, r13d
je SHORT G_M17667_IG55
cmp r15d, eax
ja SHORT G_M17667_IG56
add edi, r15d
sub eax, r15d
mov gword ptr [rbp-0x330], r12
mov dword ptr [rbp-0x328], edi
mov dword ptr [rbp-0x324], eax
jmp SHORT G_M17667_IG59
;; size=101 bbWeight=0 PerfScore 0.00
G_M17667_IG55:
sub r14d, r15d
mov ecx, r15d
mov edx, r14d
add rcx, rdx
mov eax, eax
cmp rcx, rax
jbe SHORT G_M17667_IG57
;; size=19 bbWeight=0 PerfScore 0.00
G_M17667_IG56:
mov edi, 33
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M17667_IG57:
add r15d, edi
mov rdi, r12
mov gword ptr [rbp-0x330], rdi
mov dword ptr [rbp-0x328], r15d
mov dword ptr [rbp-0x324], r14d
jmp SHORT G_M17667_IG59
;; size=29 bbWeight=0 PerfScore 0.00
G_M17667_IG58:
lea rdi, [rbp-0x88]
mov edx, r13d
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:GetFirstBufferSlow(System.Object,ubyte):System.ReadOnlyMemory`1[ubyte]:this
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:GetFirstBufferSlow(System.Object,ubyte):System.ReadOnlyMemory`1[ubyte]:this
mov gword ptr [rbp-0x330], rax
mov qword ptr [rbp-0x328], rdx
;; size=36 bbWeight=0 PerfScore 0.00
G_M17667_IG59:
xor r15, r15
xor r14d, r14d
cmp gword ptr [rbp-0x330], 0
je G_M17667_IG64
mov rdi, gword ptr [rbp-0x330]
mov rdi, qword ptr [rdi]
test dword ptr [rdi], 0xD1FFAB1E
je SHORT G_M17667_IG60
mov r15, gword ptr [rbp-0x330]
add r15, 16
mov rdi, gword ptr [rbp-0x330]
mov r14d, dword ptr [rdi+0x08]
jmp SHORT G_M17667_IG61
;; size=62 bbWeight=0 PerfScore 0.00
G_M17667_IG60:
mov rdi, gword ptr [rbp-0x330]
mov rax, gword ptr [rbp-0x330]
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
mov r15, rax
mov r14d, edx
;; size=30 bbWeight=0 PerfScore 0.00
G_M17667_IG61:
mov eax, dword ptr [rbp-0x328]
and eax, 0xD1FFAB1E
mov r13d, eax
mov eax, dword ptr [rbp-0x324]
add rax, r13
mov ecx, r14d
cmp rax, rcx
jbe SHORT G_M17667_IG63
;; size=31 bbWeight=0 PerfScore 0.00
G_M17667_IG62:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M17667_IG63:
add r15, r13
mov r14d, dword ptr [rbp-0x324]
;; size=10 bbWeight=0 PerfScore 0.00
G_M17667_IG64:
mov rcx, r15
mov r15d, r14d
;; size=6 bbWeight=0 PerfScore 0.00
G_M17667_IG65:
test r15d, r15d
je SHORT G_M17667_IG66
movzx rdx, byte ptr [rcx]
xor rcx, rcx
xor r8d, r8d
mov rdi, bword ptr [rbp-0x3B8]
mov esi, 15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
;; size=38 bbWeight=0 PerfScore 0.00
G_M17667_IG66:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M17667_IG67:
cmp byte ptr [r8+0x2D], 0
jne G_M17667_IG50
mov rcx, bword ptr [r8+0x98]
mov r15d, dword ptr [r8+0xA0]
jmp SHORT G_M17667_IG65
;; size=27 bbWeight=0 PerfScore 0.00
G_M17667_IG68:
mov rdi, bword ptr [rbp-0x3B8]
xor rcx, rcx
xor r8d, r8d
mov esi, 39
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
call [rax]System.Text.Json.ThrowHelper:ThrowJsonReaderException(byref,int,ubyte,System.ReadOnlySpan`1[ubyte])
int3
;; size=32 bbWeight=0 PerfScore 0.00
G_M17667_IG69:
cmp dword ptr [rbp-0x3A4], 0
- je G_M17667_IG72
+ je G_M17667_IG71
lea rsi, [rbp-0xC0]
mov rdi, bword ptr [rbp-0x3B8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
call [rax]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
mov ecx, dword ptr [rbp-0xA8]
movzx rdi, byte ptr [rbp-0xA4]
movzx rsi, byte ptr [rbp-0xA3]
mov dword ptr [rbp-0x350], ecx
mov byte ptr [rbp-0x34C], dil
mov byte ptr [rbp-0x34B], sil
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x348], xmm0
vmovdqu xmmword ptr [rbp-0x340], xmm0
lea rdi, [rsp]
lea rsi, [rbp-0x368]
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x20], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rsi, bword ptr [rbp-0x3E0]
mov edx, dword ptr [rbp-0x3A4]
lea rdi, [rbp-0x258]
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [rax]System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
- mov rdi, bword ptr [rbp-0x3B0]
- lea rsi, bword ptr [rbp-0x258]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=236 bbWeight=1 PerfScore 91.58
+ mov rbx, bword ptr [rbp-0x3B0]
+ cmp byte ptr [rbx], bl
+ mov rdi, rbx
+ lea rsi, [rbp-0x258]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rax, rbx
+ ;; size=209 bbWeight=1 PerfScore 60.08
G_M17667_IG70:
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- mov rax, bword ptr [rbp-0x3B0]
- ;; size=33 bbWeight=1 PerfScore 8.00
-G_M17667_IG71:
add rsp, 0x418
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M17667_IG72:
+G_M17667_IG71:
vmovdqu xmm0, xmmword ptr [rbp-0x40]
vmovdqu xmmword ptr [rbp-0xD8], xmm0
mov rsi, qword ptr [rbp-0x30]
mov qword ptr [rbp-0xC8], rsi
;; size=24 bbWeight=1 PerfScore 6.00
-G_M17667_IG73:
+G_M17667_IG72:
lea rsi, [rbp-0xC0]
mov rdi, bword ptr [rbp-0x3B8]
- mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
- call [rcx]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
+ mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
+ call [rax]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
mov ecx, dword ptr [rbp-0xA8]
movzx rdi, byte ptr [rbp-0xA4]
movzx rsi, byte ptr [rbp-0xA3]
mov dword ptr [rbp-0x388], ecx
mov byte ptr [rbp-0x384], dil
mov byte ptr [rbp-0x383], sil
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x380], xmm0
vmovdqu xmmword ptr [rbp-0x378], xmm0
lea rdi, [rsp]
lea rsi, [rbp-0xD8]
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
lea rdi, [rsp+0x18]
lea rsi, [rbp-0x3A0]
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x38], rcx
add rsi, 8
add rdi, 8
movsq
movsq
lea rdi, [rbp-0x198]
mov esi, 1
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [rax]System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
- mov rdi, bword ptr [rbp-0x3B0]
- lea rsi, bword ptr [rbp-0x198]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=248 bbWeight=1 PerfScore 93.58
-G_M17667_IG74:
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- mov rax, bword ptr [rbp-0x3B0]
- ;; size=40 bbWeight=1 PerfScore 10.00
-G_M17667_IG75:
+ mov rbx, bword ptr [rbp-0x3B0]
+ cmp byte ptr [rbx], bl
+ mov rdi, rbx
+ lea rsi, [rbp-0x198]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rax, rbx
+ ;; size=228 bbWeight=1 PerfScore 64.08
+G_M17667_IG73:
add rsp, 0x418
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M17667_IG76:
+G_M17667_IG74:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 88
mov rbp, qword ptr [rdi+0x50]
mov qword ptr [rsp+0x50], rbp
lea rbp, [rbp+0x440]
;; size=30 bbWeight=0 PerfScore 0.00
-G_M17667_IG77:
+G_M17667_IG75:
mov rdi, bword ptr [rbp-0x3C0]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ReThrowWithPath(byref,System.Text.Json.JsonReaderException)
call [rax]System.Text.Json.ThrowHelper:ReThrowWithPath(byref,System.Text.Json.JsonReaderException)
lea rax, G_M17667_IG69
;; size=26 bbWeight=0 PerfScore 0.00
-G_M17667_IG78:
+G_M17667_IG76:
add rsp, 88
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0 PerfScore 0.00
RWD00 dd G_M17667_IG09 - G_M17667_IG02
dd G_M17667_IG67 - G_M17667_IG02
dd G_M17667_IG09 - G_M17667_IG02
dd G_M17667_IG67 - G_M17667_IG02
dd G_M17667_IG67 - G_M17667_IG02
dd G_M17667_IG67 - G_M17667_IG02
dd G_M17667_IG35 - G_M17667_IG02
dd G_M17667_IG31 - G_M17667_IG02
dd G_M17667_IG31 - G_M17667_IG02
dd G_M17667_IG31 - G_M17667_IG02
dd G_M17667_IG31 - G_M17667_IG02
-; Total bytes of code 2889, prolog size 110, PerfScore 747.50, instruction count 652, allocated bytes for code 2889 (MethodHash=7537bafc) for method System.Text.Json.JsonSerializer:GetReaderScopedToNextValue(byref,byref):System.Text.Json.Utf8JsonReader (FullOpts)
+; Total bytes of code 2708, prolog size 110, PerfScore 626.50, instruction count 602, allocated bytes for code 2708 (MethodHash=7537bafc) for method System.Text.Json.JsonSerializer:GetReaderScopedToNextValue(byref,byref):System.Text.Json.Utf8JsonReader (FullOpts)
-169 (-38.94 % of base) - System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],byref,byref):ubyte
; Assembly listing for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],byref,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] ( 4, 4 ) struct (16) [rsp+0x368] do-not-enreg[SA] multireg-arg single-def <System.ReadOnlyMemory`1[ubyte]>
; V01 arg1 [V01,T02] ( 4, 3 ) byref -> r15 single-def
; V02 arg2 [V02,T01] ( 4, 3.50) byref -> rbx single-def
; V03 loc0 [V03 ] ( 2, 1.50) struct (432) [rsp+0x1B8] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
; V04 loc1 [V04 ] ( 2, 1.50) ref -> [rsp+0x1B0] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <ubyte[]>
;# V05 OutArgs [V05 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V06 tmp1 [V06,T03] ( 4, 4 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo>
-; V07 tmp2 [V07,T04] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <ubyte[]>
-; V08 tmp3 [V08,T05] ( 2, 2 ) struct (432) [rsp+0x00] do-not-enreg[S] must-init "Inlining Arg" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
+; V07 tmp2 [V07,T05] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <ubyte[]>
+; V08 tmp3 [V08,T07] ( 2, 2 ) struct (432) [rsp+0x00] do-not-enreg[S] must-init "Inlining Arg" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
+; V09 rat0 [V09,T04] ( 3, 3 ) byref -> rdi "fgMakeTemp is creating a new local variable"
+; V10 rat1 [V10,T06] ( 2, 2 ) byref -> rdi "argument with side effect"
;
; Lcl frame size = 888
G_M41876_IG01:
push r15
push rbx
sub rsp, 888
vxorps xmm8, xmm8, xmm8
mov rax, -864
vmovdqa xmmword ptr [rsp+rax+0x360], xmm8
vmovdqa xmmword ptr [rsp+rax+0x370], xmm8
vmovdqa xmmword ptr [rsp+rax+0x380], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rsp+0x360], rax
mov gword ptr [rsp+0x368], rdi
mov qword ptr [rsp+0x370], rsi
mov r15, rdx
mov rbx, rcx
;; size=88 bbWeight=1 PerfScore 13.58
G_M41876_IG02:
mov rdi, gword ptr [rsp+0x368]
mov rsi, qword ptr [rsp+0x370]
lea r9, [rsp+0x1B0]
lea rcx, [rsp+0x1B8]
mov r8, rbx
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte
call [rax]System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte
test eax, eax
- je G_M41876_IG06
- ;; size=57 bbWeight=1 PerfScore 8.00
+ je SHORT G_M41876_IG05
+ ;; size=53 bbWeight=1 PerfScore 8.00
G_M41876_IG03:
mov rdi, 0xD1FFAB1E ; System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo
call CORINFO_HELP_NEWSFAST
mov rbx, rax
mov rdx, gword ptr [rsp+0x1B0]
lea rdi, bword ptr [rsp]
lea rsi, bword ptr [rsp+0x1B8]
mov ecx, 54
rep movsq
lea rdi, bword ptr [rbx+0x08]
mov rsi, rdx
call CORINFO_HELP_ASSIGN_REF
lea rdi, bword ptr [rbx+0x20]
- lea rsi, bword ptr [rsp]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 8
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=153 bbWeight=0.50 PerfScore 38.38
-G_M41876_IG04:
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ cmp byte ptr [rdi], dil
+ lea rsi, [rsp]
+ mov edx, 208
+ call CORINFO_HELP_ASSIGN_STRUCT
mov rdi, r15
mov rsi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov eax, 1
- ;; size=107 bbWeight=0.50 PerfScore 13.88
-G_M41876_IG05:
+ ;; size=95 bbWeight=0.50 PerfScore 18.75
+G_M41876_IG04:
add rsp, 888
pop rbx
pop r15
ret
;; size=11 bbWeight=0.50 PerfScore 1.12
-G_M41876_IG06:
+G_M41876_IG05:
xor eax, eax
mov dword ptr [rbx], eax
;; size=4 bbWeight=0.50 PerfScore 0.62
-G_M41876_IG07:
+G_M41876_IG06:
mov gword ptr [r15], rax
;; size=3 bbWeight=0.50 PerfScore 0.50
-G_M41876_IG08:
+G_M41876_IG07:
add rsp, 888
pop rbx
pop r15
ret
;; size=11 bbWeight=0.50 PerfScore 1.12
-; Total bytes of code 434, prolog size 66, PerfScore 77.21, instruction count 101, allocated bytes for code 434 (MethodHash=a4045c6b) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],byref,byref):ubyte (FullOpts)
+; Total bytes of code 265, prolog size 66, PerfScore 43.71, instruction count 56, allocated bytes for code 265 (MethodHash=a4045c6b) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],byref,byref):ubyte (FullOpts)
-166 (-21.87 % of base) - System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo
; Assembly listing for method System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo (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; 10 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
-; V00 RetBuf [V00,T02] ( 4, 4 ) byref -> rbx single-def
+; V00 RetBuf [V00,T02] ( 5, 5 ) byref -> rbx single-def
; V01 arg0 [V01,T03] ( 3, 3 ) struct ( 8) [rbp-0x30] do-not-enreg[S] single-def <System.Formats.Asn1.Asn1Tag>
; V02 arg1 [V02,T00] ( 7, 6 ) struct (16) [rbp-0x40] do-not-enreg[SFA] multireg-arg ld-addr-op single-def <System.ReadOnlyMemory`1[ubyte]>
; V03 arg2 [V03,T04] ( 3, 3 ) int -> r15 single-def
; V04 loc0 [V04 ] ( 6, 5.50) struct (24) [rbp-0x58] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Formats.Asn1.AsnValueReader>
; V05 loc1 [V05 ] ( 2, 2 ) struct (432) [rbp-0x208] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
; V06 loc2 [V06,T13] ( 2, 2 ) struct (432) [rbp-0x3B8] do-not-enreg[S] must-init <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
;* V07 loc3 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Formats.Asn1.AsnContentException>
;# V08 OutArgs [V08 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V09 tmp1 [V09 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
; V10 tmp2 [V10,T23] ( 2, 0 ) ref -> rbx class-hnd single-def "impSpillSpecialSideEff" <System.Formats.Asn1.AsnContentException>
; V11 tmp3 [V11,T22] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
;* V12 tmp4 [V12 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V13 tmp5 [V13,T06] ( 6, 4 ) byref -> r14 "Inline stloc first use temp"
; V14 tmp6 [V14,T07] ( 6, 4 ) int -> r13 "Inline stloc first use temp"
; V15 tmp7 [V15,T05] ( 7, 4.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
;* V16 tmp8 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V17 tmp9 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Buffers.MemoryManager`1[ubyte]>
;* V18 tmp10 [V18 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V19 tmp11 [V19 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op single-def "Inline stloc first use temp" <System.Span`1[ubyte]>
; V20 tmp12 [V20,T15] ( 3, 1.50) long -> rdx single-def "Inline stloc first use temp"
; V21 tmp13 [V21,T16] ( 3, 1.50) int -> rcx single-def "Inline stloc first use temp"
;* V22 tmp14 [V22 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "updating class info" <ubyte[]>
;* V23 tmp15 [V23 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
; V24 tmp16 [V24,T11] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
;* V25 tmp17 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V26 tmp18 [V26 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Formats.Asn1.AsnReaderOptions>
;* V27 tmp19 [V27 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlyMemory`1[ubyte]>
; V28 tmp20 [V28,T09] ( 3, 3 ) int -> r15 "impAppendStmt"
; V29 tmp21 [V29,T01] ( 7, 7 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Formats.Asn1.AsnReader>
; V30 tmp22 [V30,T08] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" <ubyte[]>
;* V31 tmp23 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V32 tmp24 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Formats.Asn1.AsnReaderOptions>
;* V33 tmp25 [V33 ] ( 0, 0 ) byref -> zero-ref "field V09._reference (fldOffset=0x0)" P-INDEP
;* V34 tmp26 [V34 ] ( 0, 0 ) int -> zero-ref "field V09._length (fldOffset=0x8)" P-INDEP
;* V35 tmp27 [V35 ] ( 0, 0 ) byref -> zero-ref "field V12._reference (fldOffset=0x0)" P-INDEP
;* V36 tmp28 [V36 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
; V37 tmp29 [V37,T12] ( 2, 2 ) byref -> rdx single-def "field V16._reference (fldOffset=0x0)" P-INDEP
; V38 tmp30 [V38,T14] ( 2, 2 ) int -> r13 single-def "field V16._length (fldOffset=0x8)" P-INDEP
;* V39 tmp31 [V39 ] ( 0, 0 ) byref -> zero-ref "field V18._reference (fldOffset=0x0)" P-DEP
;* V40 tmp32 [V40 ] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-DEP
; V41 tmp33 [V41,T18] ( 2, 1 ) byref -> r14 "field V19._reference (fldOffset=0x0)" P-INDEP
; V42 tmp34 [V42,T19] ( 2, 1 ) int -> r13 "field V19._length (fldOffset=0x8)" P-INDEP
;* V43 tmp35 [V43 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V44 tmp36 [V44 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V45 tmp37 [V45 ] ( 0, 0 ) ushort -> zero-ref single-def "field V26._twoDigitYearMax (fldOffset=0x0)" P-INDEP
;* V46 tmp38 [V46 ] ( 0, 0 ) ubyte -> zero-ref single-def "field V26.<SkipSetSortOrderVerification>k__BackingField (fldOffset=0x2)" P-INDEP
;* V47 tmp39 [V47 ] ( 0, 0 ) ref -> zero-ref single-def "field V27._object (fldOffset=0x0)" P-INDEP
;* V48 tmp40 [V48 ] ( 0, 0 ) int -> zero-ref single-def "field V27._index (fldOffset=0x8)" P-INDEP
;* V49 tmp41 [V49 ] ( 0, 0 ) int -> zero-ref single-def "field V27._length (fldOffset=0xc)" P-INDEP
; V50 tmp42 [V50,T10] ( 4, 2 ) ref -> r14 "field V31._object (fldOffset=0x0)" P-INDEP
;* V51 tmp43 [V51,T20] ( 0, 0 ) int -> zero-ref "field V31._index (fldOffset=0x8)" P-INDEP
; V52 tmp44 [V52,T17] ( 3, 1.50) int -> r13 "field V31._length (fldOffset=0xc)" P-INDEP
;* V53 tmp45 [V53 ] ( 0, 0 ) ushort -> zero-ref single-def "field V32._twoDigitYearMax (fldOffset=0x0)" P-INDEP
;* V54 tmp46 [V54 ] ( 0, 0 ) ubyte -> zero-ref single-def "field V32.<SkipSetSortOrderVerification>k__BackingField (fldOffset=0x2)" P-INDEP
; V55 tmp47 [V55,T24] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
; V56 PSPSym [V56,T21] ( 1, 1 ) long -> [rbp-0x3C0] do-not-enreg[V] "PSPSym"
;
; Lcl frame size = 920
G_M59881_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 920
lea rbp, [rsp+0x3C0]
xor eax, eax
mov qword ptr [rbp-0x3B8], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x3B0], xmm8
mov rax, -864
vmovdqa xmmword ptr [rbp+rax-0x40], xmm8
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x3C0], rsp
mov qword ptr [rbp-0x30], rsi
mov gword ptr [rbp-0x40], rdx
mov qword ptr [rbp-0x38], rcx
mov rbx, rdi
mov r15d, r8d
;; size=106 bbWeight=1 PerfScore 22.33
G_M59881_IG02:
xor r14, r14
xor r13d, r13d
mov rdi, gword ptr [rbp-0x40]
test rdi, rdi
je SHORT G_M59881_IG06
;; size=15 bbWeight=1 PerfScore 2.75
G_M59881_IG03:
mov rax, qword ptr [rdi]
test dword ptr [rax], 0xD1FFAB1E
je SHORT G_M59881_IG04
lea r14, bword ptr [rdi+0x10]
mov r13d, dword ptr [rdi+0x08]
jmp SHORT G_M59881_IG05
;; size=21 bbWeight=0.50 PerfScore 5.25
G_M59881_IG04:
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
mov r14, rax
mov r13d, edx
;; size=16 bbWeight=0.50 PerfScore 3.75
G_M59881_IG05:
mov edx, dword ptr [rbp-0x38]
and edx, 0xD1FFAB1E
mov ecx, dword ptr [rbp-0x34]
mov r8d, ecx
add r8, rdx
mov edi, r13d
cmp r8, rdi
ja G_M59881_IG13
add r14, rdx
mov r13d, ecx
;; size=36 bbWeight=0.50 PerfScore 2.38
G_M59881_IG06:
mov rdx, r14
mov bword ptr [rbp-0x58], rdx
mov dword ptr [rbp-0x50], r13d
mov dword ptr [rbp-0x48], r15d
mov rdx, gword ptr [rbp-0x40]
mov rcx, qword ptr [rbp-0x38]
lea r8, [rbp-0x208]
lea rdi, [rbp-0x58]
mov rsi, qword ptr [rbp-0x30]
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:DecodeCore(byref,System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],byref)
call [rax]System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:DecodeCore(byref,System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],byref)
cmp dword ptr [rbp-0x50], 0
je G_M59881_IG11
;; size=60 bbWeight=1 PerfScore 13.50
G_M59881_IG07:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je G_M59881_IG12
;; size=19 bbWeight=0.50 PerfScore 2.12
G_M59881_IG08:
mov rdi, 0xD1FFAB1E ; data for System.Formats.Asn1.AsnValueReader:s_singleByte
mov r15, gword ptr [rdi]
test r15, r15
jne G_M59881_IG14
xor r14, r14
xor r13d, r13d
;; size=28 bbWeight=0.50 PerfScore 2.00
G_M59881_IG09:
mov r15d, dword ptr [rbp-0x48]
mov rdi, 0xD1FFAB1E ; System.Formats.Asn1.AsnReader
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov edi, r15d
mov rax, 0xD1FFAB1E ; code for System.Formats.Asn1.AsnDecoder:CheckEncodingRules(int)
call [rax]System.Formats.Asn1.AsnDecoder:CheckEncodingRules(int)
lea rdi, bword ptr [r12+0x10]
mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
xor edi, edi
mov dword ptr [r12+0x18], edi
mov dword ptr [r12+0x1C], r13d
mov dword ptr [r12+0x08], r15d
;; size=67 bbWeight=0.50 PerfScore 5.50
G_M59881_IG10:
mov dword ptr [r12+0x20], edi
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Formats.Asn1.AsnReader:ThrowIfNotEmpty():this
call [rax]System.Formats.Asn1.AsnReader:ThrowIfNotEmpty():this
;; size=20 bbWeight=0.50 PerfScore 2.25
G_M59881_IG11:
lea rdi, bword ptr [rbp-0x3B8]
lea rsi, bword ptr [rbp-0x208]
mov ecx, 54
rep movsq
jmp SHORT G_M59881_IG15
;; size=24 bbWeight=1 PerfScore 28.25
G_M59881_IG12:
mov rdi, 0xD1FFAB1E
mov esi, 134
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
jmp G_M59881_IG08
;; size=25 bbWeight=0 PerfScore 0.00
G_M59881_IG13:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M59881_IG14:
mov r14, r15
mov r13d, dword ptr [r14+0x08]
jmp G_M59881_IG09
;; size=12 bbWeight=0.50 PerfScore 2.12
G_M59881_IG15:
+ cmp byte ptr [rbx], bl
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x3B8]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 8
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- ;; size=121 bbWeight=1 PerfScore 55.00
-G_M59881_IG16:
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ lea rsi, [rbp-0x3B8]
+ mov edx, 208
+ call CORINFO_HELP_ASSIGN_STRUCT
mov rax, rbx
- ;; size=70 bbWeight=1 PerfScore 17.25
-G_M59881_IG17:
+ ;; size=25 bbWeight=1 PerfScore 5.25
+G_M59881_IG16:
add rsp, 920
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M59881_IG18:
+G_M59881_IG17:
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+0x3C0]
;; size=25 bbWeight=0 PerfScore 0.00
-G_M59881_IG19:
+G_M59881_IG18:
mov rbx, rsi
mov rdi, 0xD1FFAB1E ; System.Security.Cryptography.CryptographicException
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_Cryptography_Der_Invalid_Encoding():System.String
call [rax]System.SR:get_Cryptography_Der_Invalid_Encoding():System.String
mov rsi, rax
mov rdi, r15
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.CryptographicException:.ctor(System.String,System.Exception):this
call [rax]System.Security.Cryptography.CryptographicException:.ctor(System.String,System.Exception):this
mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=63 bbWeight=0 PerfScore 0.00
-; Total bytes of code 759, prolog size 106, PerfScore 168.71, instruction count 188, allocated bytes for code 759 (MethodHash=28481616) for method System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo (FullOpts)
+; Total bytes of code 593, prolog size 106, PerfScore 101.71, instruction count 143, allocated bytes for code 593 (MethodHash=28481616) for method System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.Formats.Asn1.Asn1Tag,System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo (FullOpts)
-161 (-79.70 % of base) - System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:.ctor(ubyte[],System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo):this
; Assembly listing for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:.ctor(ubyte[],System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo):this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 4, 4 ) ref -> rbx this class-hnd single-def <System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo>
-; V01 arg1 [V01,T01] ( 3, 3 ) ref -> rsi class-hnd single-def <ubyte[]>
-; V02 arg2 [V02,T02] ( 1, 1 ) struct (432) [rsp+0x10] do-not-enreg[S] single-def <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
+; V01 arg1 [V01,T02] ( 3, 3 ) ref -> rsi class-hnd single-def <ubyte[]>
+; V02 arg2 [V02,T04] ( 1, 1 ) struct (432) [rsp+0x10] do-not-enreg[S] single-def <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
+; V04 rat0 [V04,T01] ( 3, 6 ) byref -> rdi "fgMakeTemp is creating a new local variable"
+; V05 rat1 [V05,T03] ( 2, 4 ) byref -> rdi "argument with side effect"
;
; Lcl frame size = 0
G_M49801_IG01:
push rbx
mov rbx, rdi
;; size=4 bbWeight=1 PerfScore 1.25
G_M49801_IG02:
lea rdi, bword ptr [rbx+0x08]
call CORINFO_HELP_ASSIGN_REF
- lea rdi, bword ptr [rbx+0x20]
- lea rsi, bword ptr [rsp+0x10]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 8
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- ;; size=127 bbWeight=1 PerfScore 55.75
+ add rbx, 32
+ mov rdi, rbx
+ cmp byte ptr [rdi], dil
+ lea rsi, [rsp+0x10]
+ mov edx, 208
+ call CORINFO_HELP_ASSIGN_STRUCT
+ nop
+ ;; size=35 bbWeight=1 PerfScore 7.00
G_M49801_IG03:
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=69 bbWeight=1 PerfScore 18.00
-G_M49801_IG04:
pop rbx
ret
;; size=2 bbWeight=1 PerfScore 1.50
-; Total bytes of code 202, prolog size 1, PerfScore 76.50, instruction count 56, allocated bytes for code 202 (MethodHash=a53d3d76) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:.ctor(ubyte[],System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo):this (FullOpts)
+; Total bytes of code 41, prolog size 1, PerfScore 9.75, instruction count 13, allocated bytes for code 41 (MethodHash=a53d3d76) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:.ctor(ubyte[],System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo):this (FullOpts)
-161 (-13.05 % of base) - System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte
; Assembly listing for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 32 single block inlinees; 6 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T16] ( 3, 3 ) struct (16) [rbp-0x30] do-not-enreg[SA] multireg-arg single-def <System.ReadOnlyMemory`1[ubyte]>
; V01 arg1 [V01,T17] ( 3, 3 ) ubyte -> r15 single-def
-; V02 arg2 [V02,T14] ( 5, 3 ) byref -> [rbp-0x200] EH-live single-def
+; V02 arg2 [V02,T06] ( 6, 4 ) byref -> [rbp-0x200] EH-live single-def
; V03 arg3 [V03,T15] ( 5, 3 ) byref -> [rbp-0x208] EH-live single-def
; V04 arg4 [V04,T03] ( 7, 5 ) byref -> [rbp-0x210] EH-live single-def
;* V05 loc0 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Formats.Asn1.AsnReader>
;* V06 loc1 [V06 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.Formats.Asn1.AsnReaderOptions>
; V07 loc2 [V07,T00] ( 10, 10 ) struct (16) [rbp-0x40] do-not-enreg[SFAR] multireg-arg multireg-ret must-init ld-addr-op <System.ReadOnlyMemory`1[ubyte]>
; V08 loc3 [V08 ] ( 8, 8 ) struct (432) [rbp-0x1F0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo>
;* V09 loc4 [V09 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.Nullable`1[int]>
;* V10 loc5 [V10 ] ( 0, 0 ) int -> zero-ref
; V11 loc6 [V11,T31] ( 4, 2 ) ubyte -> [rbp-0x1F4] do-not-enreg[M] EH-live
;# V12 OutArgs [V12 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V13 tmp1 [V13,T01] ( 5, 10 ) ref -> rdx class-hnd exact single-def "NewObj constructor temp" <System.Formats.Asn1.AsnReader>
-; V14 tmp2 [V14,T32] ( 2, 2 ) byref -> rcx single-def
+; V14 tmp2 [V14,T32] ( 2, 2 ) byref -> rdi single-def
;* V15 tmp3 [V15 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "location for address-of(RValue)" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161Accuracy>
;* V16 tmp4 [V16 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V17 tmp5 [V17,T24] ( 2, 2 ) int -> rcx
+; V17 tmp5 [V17,T24] ( 2, 2 ) int -> rdi
; V18 tmp6 [V18,T51] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
-; V19 tmp7 [V19,T33] ( 2, 2 ) byref -> rsi single-def
+; V19 tmp7 [V19,T33] ( 2, 2 ) byref -> rdx single-def
;* V20 tmp8 [V20 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "location for address-of(RValue)" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161Accuracy>
;* V21 tmp9 [V21 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V22 tmp10 [V22,T25] ( 2, 2 ) int -> rcx
-; V23 tmp11 [V23,T34] ( 2, 2 ) byref -> rcx single-def
+; V22 tmp10 [V22,T25] ( 2, 2 ) int -> rdi
+; V23 tmp11 [V23,T34] ( 2, 2 ) byref -> rdi single-def
;* V24 tmp12 [V24 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "location for address-of(RValue)" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161Accuracy>
;* V25 tmp13 [V25 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V26 tmp14 [V26,T26] ( 2, 2 ) int -> rcx
-; V27 tmp15 [V27,T35] ( 2, 2 ) byref -> rcx single-def
+; V26 tmp14 [V26,T26] ( 2, 2 ) int -> rdi
+; V27 tmp15 [V27,T35] ( 2, 2 ) byref -> rdi single-def
;* V28 tmp16 [V28 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "location for address-of(RValue)" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161Accuracy>
;* V29 tmp17 [V29 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V30 tmp18 [V30,T27] ( 2, 2 ) int -> rcx
-; V31 tmp19 [V31,T36] ( 2, 2 ) byref -> rdx single-def
+; V30 tmp18 [V30,T27] ( 2, 2 ) int -> rdi
+; V31 tmp19 [V31,T36] ( 2, 2 ) byref -> r15 single-def
;* V32 tmp20 [V32 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "location for address-of(RValue)" <System.Security.Cryptography.Pkcs.Asn1.Rfc3161Accuracy>
;* V33 tmp21 [V33 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
; V34 tmp22 [V34,T28] ( 2, 2 ) int -> rax
;* V35 tmp23 [V35 ] ( 0, 0 ) ref -> zero-ref class-hnd "impSpillSpecialSideEff" <System.Security.Cryptography.CryptographicException>
;* V36 tmp24 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd "impSpillSpecialSideEff" <System.Formats.Asn1.AsnContentException>
;* V37 tmp25 [V37 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Formats.Asn1.AsnReaderOptions>
;* V38 tmp26 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V39 tmp27 [V39 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
-; V40 tmp28 [V40,T06] ( 6, 6 ) byref -> r15 "Inline stloc first use temp"
+; V40 tmp28 [V40,T07] ( 6, 6 ) byref -> r15 "Inline stloc first use temp"
; V41 tmp29 [V41,T02] ( 8, 8 ) int -> r13 "Inline stloc first use temp"
; V42 tmp30 [V42,T04] ( 7, 7 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
;* V43 tmp31 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V44 tmp32 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Buffers.MemoryManager`1[ubyte]>
;* V45 tmp33 [V45 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V46 tmp34 [V46 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op single-def "Inline stloc first use temp" <System.Span`1[ubyte]>
; V47 tmp35 [V47,T29] ( 3, 3 ) long -> rdi single-def "Inline stloc first use temp"
;* V48 tmp36 [V48 ] ( 0, 0 ) int -> zero-ref single-def "Inline stloc first use temp"
;* V49 tmp37 [V49 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "updating class info" <ubyte[]>
;* V50 tmp38 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <ubyte[]>
-; V51 tmp39 [V51,T19] ( 2, 4 ) byref -> rax single-def "Inlining Arg"
+; V51 tmp39 [V51,T19] ( 2, 4 ) byref -> rcx single-def "Inlining Arg"
;* V52 tmp40 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
; V53 tmp41 [V53,T22] ( 3, 3 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V54 tmp42 [V54,T23] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Inline stloc first use temp" <ubyte[]>
; V55 tmp43 [V55,T20] ( 2, 4 ) byref -> rdi single-def "Inlining Arg"
;* V56 tmp44 [V56 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
; V57 tmp45 [V57,T21] ( 2, 4 ) long -> rdx "Inlining Arg"
-; V58 tmp46 [V58,T08] ( 3, 6 ) ref -> rsi class-hnd single-def "Inlining Arg" <ubyte[]>
+; V58 tmp46 [V58,T09] ( 3, 6 ) ref -> rsi class-hnd single-def "Inlining Arg" <ubyte[]>
;* V59 tmp47 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlyMemory`1[ubyte]>
;* V60 tmp48 [V60 ] ( 0, 0 ) ushort -> zero-ref single-def "field V06._twoDigitYearMax (fldOffset=0x0)" P-INDEP
;* V61 tmp49 [V61 ] ( 0, 0 ) ubyte -> zero-ref single-def "field V06.<SkipSetSortOrderVerification>k__BackingField (fldOffset=0x2)" P-INDEP
;* V62 tmp50 [V62 ] ( 0, 0 ) ubyte -> zero-ref "field V09.hasValue (fldOffset=0x0)" P-INDEP
;* V63 tmp51 [V63 ] ( 0, 0 ) int -> zero-ref "field V09.value (fldOffset=0x4)" P-INDEP
;* V64 tmp52 [V64 ] ( 0, 0 ) ushort -> zero-ref single-def "field V37._twoDigitYearMax (fldOffset=0x0)" P-INDEP
;* V65 tmp53 [V65 ] ( 0, 0 ) ubyte -> zero-ref single-def "field V37.<SkipSetSortOrderVerification>k__BackingField (fldOffset=0x2)" P-INDEP
;* V66 tmp54 [V66 ] ( 0, 0 ) byref -> zero-ref single-def "field V38._reference (fldOffset=0x0)" P-INDEP
;* V67 tmp55 [V67 ] ( 0, 0 ) int -> zero-ref single-def "field V38._length (fldOffset=0x8)" P-INDEP
;* V68 tmp56 [V68 ] ( 0, 0 ) byref -> zero-ref "field V39._reference (fldOffset=0x0)" P-INDEP
;* V69 tmp57 [V69 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
;* V70 tmp58 [V70 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V71 tmp59 [V71 ] ( 0, 0 ) int -> zero-ref single-def "field V43._length (fldOffset=0x8)" P-INDEP
;* V72 tmp60 [V72 ] ( 0, 0 ) byref -> zero-ref "field V45._reference (fldOffset=0x0)" P-DEP
;* V73 tmp61 [V73 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-DEP
; V74 tmp62 [V74,T37] ( 2, 2 ) byref -> r15 "field V46._reference (fldOffset=0x0)" P-INDEP
; V75 tmp63 [V75,T38] ( 2, 2 ) int -> r13 "field V46._length (fldOffset=0x8)" P-INDEP
;* V76 tmp64 [V76 ] ( 0, 0 ) byref -> zero-ref single-def "field V52._reference (fldOffset=0x0)" P-INDEP
;* V77 tmp65 [V77 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
; V78 tmp66 [V78,T18] ( 4, 4 ) ref -> rdx "field V59._object (fldOffset=0x0)" P-INDEP
;* V79 tmp67 [V79,T39] ( 0, 0 ) int -> zero-ref "field V59._index (fldOffset=0x8)" P-INDEP
; V80 tmp68 [V80,T30] ( 3, 3 ) int -> r14 "field V59._length (fldOffset=0xc)" P-INDEP
; V81 tmp69 [V81,T05] ( 7, 7 ) int -> r14 "V07.[012..016)"
-; V82 tmp70 [V82,T40] ( 2, 2 ) ubyte -> rsi single-def "V15.[016..017)"
-; V83 tmp71 [V83,T41] ( 2, 2 ) int -> rcx single-def "V15.[020..024)"
-; V84 tmp72 [V84,T42] ( 2, 2 ) ubyte -> rcx single-def "V20.[016..017)"
-; V85 tmp73 [V85,T43] ( 2, 2 ) int -> rsi single-def "V20.[020..024)"
-; V86 tmp74 [V86,T44] ( 2, 2 ) ubyte -> rsi single-def "V24.[008..009)"
-; V87 tmp75 [V87,T45] ( 2, 2 ) int -> rcx single-def "V24.[012..016)"
-; V88 tmp76 [V88,T46] ( 2, 2 ) ubyte -> rsi single-def "V28.[008..009)"
-; V89 tmp77 [V89,T47] ( 2, 2 ) int -> rcx single-def "V28.[012..016)"
+; V82 tmp70 [V82,T40] ( 2, 2 ) ubyte -> rdx single-def "V15.[016..017)"
+; V83 tmp71 [V83,T41] ( 2, 2 ) int -> rdi single-def "V15.[020..024)"
+; V84 tmp72 [V84,T42] ( 2, 2 ) ubyte -> rdi single-def "V20.[016..017)"
+; V85 tmp73 [V85,T43] ( 2, 2 ) int -> rdx single-def "V20.[020..024)"
+; V86 tmp74 [V86,T44] ( 2, 2 ) ubyte -> rdx single-def "V24.[008..009)"
+; V87 tmp75 [V87,T45] ( 2, 2 ) int -> rdi single-def "V24.[012..016)"
+; V88 tmp76 [V88,T46] ( 2, 2 ) ubyte -> rdx single-def "V28.[008..009)"
+; V89 tmp77 [V89,T47] ( 2, 2 ) int -> rdi single-def "V28.[012..016)"
; V90 tmp78 [V90,T48] ( 2, 2 ) ubyte -> rax single-def "V32.[000..001)"
; V91 tmp79 [V91,T49] ( 2, 2 ) int -> rcx single-def "V32.[004..008)"
-; V92 tmp80 [V92,T09] ( 3, 6 ) byref -> rcx single-def "Spilling address for field-by-field copy"
-; V93 tmp81 [V93,T10] ( 3, 6 ) byref -> rsi single-def "Spilling address for field-by-field copy"
-; V94 tmp82 [V94,T11] ( 3, 6 ) byref -> rcx single-def "Spilling address for field-by-field copy"
-; V95 tmp83 [V95,T12] ( 3, 6 ) byref -> rcx single-def "Spilling address for field-by-field copy"
-; V96 tmp84 [V96,T13] ( 3, 6 ) byref -> rdx single-def "Spilling address for field-by-field copy"
+; V92 tmp80 [V92,T10] ( 3, 6 ) byref -> rdi single-def "Spilling address for field-by-field copy"
+; V93 tmp81 [V93,T11] ( 3, 6 ) byref -> rdx single-def "Spilling address for field-by-field copy"
+; V94 tmp82 [V94,T12] ( 3, 6 ) byref -> rdi single-def "Spilling address for field-by-field copy"
+; V95 tmp83 [V95,T13] ( 3, 6 ) byref -> rdi single-def "Spilling address for field-by-field copy"
+; V96 tmp84 [V96,T14] ( 3, 6 ) byref -> r15 single-def "Spilling address for field-by-field copy"
; V97 tmp85 [V97,T52] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
; V98 PSPSym [V98,T50] ( 1, 1 ) long -> [rbp-0x220] do-not-enreg[V] "PSPSym"
-; V99 cse0 [V99,T07] ( 6, 6 ) int -> rdi "CSE #01: moderate"
+; V99 cse0 [V99,T08] ( 6, 6 ) int -> rsi "CSE #01: moderate"
;
; Lcl frame size = 512
G_M21921_IG01:
push rbp
push r15
push r14
push r13
push rbx
sub rsp, 512
lea rbp, [rsp+0x220]
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x1F0], xmm8
mov rax, -432
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x220], rsp
mov gword ptr [rbp-0x30], rdi
mov qword ptr [rbp-0x28], rsi
mov bword ptr [rbp-0x200], rcx
mov bword ptr [rbp-0x208], r8
mov bword ptr [rbp-0x210], r9
mov r15d, edx
mov rbx, rcx
;; size=112 bbWeight=1 PerfScore 22.08
G_M21921_IG02:
mov rdi, 0xD1FFAB1E ; System.Formats.Asn1.AsnReader
call CORINFO_HELP_NEWSFAST
mov rdx, rax
lea rdi, bword ptr [rdx+0x10]
lea rsi, bword ptr [rbp-0x30]
call CORINFO_HELP_ASSIGN_BYREF
movsq
mov dword ptr [rdx+0x08], 2
xor edi, edi
mov dword ptr [rdx+0x20], edi
;; size=45 bbWeight=1 PerfScore 6.75
G_M21921_IG03:
mov rdi, rdx
mov rax, 0xD1FFAB1E ; code for System.Formats.Asn1.AsnReader:PeekEncodedValue():System.ReadOnlyMemory`1[ubyte]:this
call [rax]System.Formats.Asn1.AsnReader:PeekEncodedValue():System.ReadOnlyMemory`1[ubyte]:this
mov gword ptr [rbp-0x40], rax
mov qword ptr [rbp-0x38], rdx
mov r14d, dword ptr [rbp-0x34]
test r15b, r15b
je SHORT G_M21921_IG04
xor rdi, rdi
- mov r9, bword ptr [rbp-0x210]
- mov gword ptr [r9], rdi
+ mov rax, bword ptr [rbp-0x210]
+ mov gword ptr [rax], rdi
jmp G_M21921_IG10
;; size=49 bbWeight=1 PerfScore 12.00
G_M21921_IG04:
xor r15, r15
xor r13d, r13d
mov rdi, gword ptr [rbp-0x40]
test rdi, rdi
je SHORT G_M21921_IG07
- mov rax, qword ptr [rdi]
- test dword ptr [rax], 0xD1FFAB1E
+ mov rcx, qword ptr [rdi]
+ test dword ptr [rcx], 0xD1FFAB1E
je SHORT G_M21921_IG05
lea r15, bword ptr [rdi+0x10]
mov r13d, dword ptr [rdi+0x08]
jmp SHORT G_M21921_IG06
;; size=36 bbWeight=1 PerfScore 13.25
G_M21921_IG05:
- mov rax, qword ptr [rdi]
- mov rax, qword ptr [rax+0x40]
- call [rax+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
+ mov rcx, qword ptr [rdi]
+ mov rcx, qword ptr [rcx+0x40]
+ call [rcx+0x28]System.Buffers.MemoryManager`1[ubyte]:GetSpan():System.Span`1[ubyte]:this
mov r15, rax
mov r13d, edx
;; size=16 bbWeight=1 PerfScore 7.50
G_M21921_IG06:
mov edi, dword ptr [rbp-0x38]
and edi, 0xD1FFAB1E
mov esi, r14d
add rsi, rdi
- mov eax, r13d
- cmp rsi, rax
- ja G_M21921_IG18
+ mov ecx, r13d
+ cmp rsi, rcx
+ ja G_M21921_IG17
add r15, rdi
mov r13d, r14d
;; size=33 bbWeight=1 PerfScore 3.75
G_M21921_IG07:
test r13d, r13d
- jne G_M21921_IG19
+ jne G_M21921_IG18
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
;; size=42 bbWeight=1 PerfScore 5.00
G_M21921_IG08:
mov rdi, bword ptr [rbp-0x210]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, bword ptr [rbp-0x210]
mov rsi, gword ptr [rdi]
test rsi, rsi
- jne G_M21921_IG20
+ jne G_M21921_IG19
xor rdx, rdx
xor r14d, r14d
;; size=36 bbWeight=1 PerfScore 6.75
G_M21921_IG09:
mov gword ptr [rbp-0x40], rdx
xor esi, esi
mov dword ptr [rbp-0x38], esi
mov dword ptr [rbp-0x34], r14d
;; size=13 bbWeight=1 PerfScore 3.25
G_M21921_IG10:
mov dword ptr [rbp-0x34], r14d
mov rsi, gword ptr [rbp-0x40]
mov rdx, qword ptr [rbp-0x38]
lea rdi, [rbp-0x1F0]
mov ecx, 2
- mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo
- call [rax]System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo
- lea rcx, bword ptr [rbp-0x188]
- movzx rdi, byte ptr [rbp-0x188]
- test edi, edi
- jne G_M21921_IG21
- ;; size=59 bbWeight=1 PerfScore 9.75
+ mov r8, 0xD1FFAB1E ; code for System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo
+ call [r8]System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo:Decode(System.ReadOnlyMemory`1[ubyte],int):System.Security.Cryptography.Pkcs.Asn1.Rfc3161TstInfo
+ lea rdi, bword ptr [rbp-0x188]
+ movzx rsi, byte ptr [rbp-0x188]
+ test esi, esi
+ jne G_M21921_IG20
+ ;; size=60 bbWeight=1 PerfScore 9.75
G_M21921_IG11:
- lea rsi, bword ptr [rbp-0x188]
- test edi, edi
- jne G_M21921_IG22
+ lea rdx, bword ptr [rbp-0x188]
+ test esi, esi
+ jne G_M21921_IG21
;; size=15 bbWeight=1 PerfScore 1.75
G_M21921_IG12:
- lea rcx, bword ptr [rbp-0x188]
- test edi, edi
- jne G_M21921_IG23
+ lea rdi, bword ptr [rbp-0x188]
+ test esi, esi
+ jne G_M21921_IG22
;; size=15 bbWeight=1 PerfScore 1.75
G_M21921_IG13:
- lea rcx, bword ptr [rbp-0x188]
- test edi, edi
- jne G_M21921_IG24
+ lea rdi, bword ptr [rbp-0x188]
+ test esi, esi
+ jne G_M21921_IG23
;; size=15 bbWeight=1 PerfScore 1.75
G_M21921_IG14:
- lea rdx, bword ptr [rbp-0x188]
- test edi, edi
- jne G_M21921_IG25
+ lea r15, bword ptr [rbp-0x188]
+ test esi, esi
+ jne G_M21921_IG24
;; size=15 bbWeight=1 PerfScore 1.75
G_M21921_IG15:
+ cmp byte ptr [rbx], bl
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x1F0]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 8
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- movsq
- ;; size=121 bbWeight=1 PerfScore 55.00
-G_M21921_IG16:
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ lea rsi, [rbp-0x1F0]
+ mov edx, 208
+ call CORINFO_HELP_ASSIGN_STRUCT
mov r8, bword ptr [rbp-0x208]
mov dword ptr [r8], r14d
mov dword ptr [rbp-0x1F4], 1
- jmp G_M21921_IG26
- ;; size=92 bbWeight=1 PerfScore 22.00
-G_M21921_IG17:
+ jmp G_M21921_IG25
+ ;; size=47 bbWeight=1 PerfScore 10.00
+G_M21921_IG16:
mov rdi, 0xD1FFAB1E ; System.Security.Cryptography.CryptographicException
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_Cryptography_Der_Invalid_Encoding():System.String
call [rax]System.SR:get_Cryptography_Der_Invalid_Encoding():System.String
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Security.Cryptography.CryptographicException:.ctor(System.String):this
call [rax]System.Security.Cryptography.CryptographicException:.ctor(System.String):this
mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=57 bbWeight=0 PerfScore 0.00
-G_M21921_IG18:
- mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
- call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
+G_M21921_IG17:
+ mov rcx, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
+ call [rcx]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M21921_IG19:
+G_M21921_IG18:
movsxd rsi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
jmp G_M21921_IG08
;; size=51 bbWeight=1 PerfScore 8.25
-G_M21921_IG20:
+G_M21921_IG19:
mov rdx, rsi
mov r14d, dword ptr [rdx+0x08]
jmp G_M21921_IG09
;; size=12 bbWeight=1 PerfScore 4.25
-G_M21921_IG21:
- add rcx, 4
- movzx rsi, byte ptr [rcx+0x10]
- mov ecx, dword ptr [rcx+0x14]
- cmp ecx, 999
- setg cl
- movzx rcx, cl
- and ecx, esi
- jne G_M21921_IG17
+G_M21921_IG20:
+ add rdi, 4
+ movzx rdx, byte ptr [rdi+0x10]
+ mov edi, dword ptr [rdi+0x14]
+ cmp edi, 999
+ setg dil
+ movzx rdi, dil
+ and edi, edx
+ jne G_M21921_IG16
jmp G_M21921_IG11
- ;; size=37 bbWeight=1 PerfScore 9.00
-G_M21921_IG22:
- add rsi, 4
- movzx rcx, byte ptr [rsi+0x10]
- mov esi, dword ptr [rsi+0x14]
- test esi, esi
- setle sil
- movzx rsi, sil
- and ecx, esi
- jne G_M21921_IG17
+ ;; size=38 bbWeight=1 PerfScore 9.00
+G_M21921_IG21:
+ add rdx, 4
+ movzx rdi, byte ptr [rdx+0x10]
+ mov edx, dword ptr [rdx+0x14]
+ test edx, edx
+ setle dl
+ movzx rdx, dl
+ and edi, edx
+ jne G_M21921_IG16
jmp G_M21921_IG12
- ;; size=34 bbWeight=1 PerfScore 9.00
-G_M21921_IG23:
- add rcx, 4
- movzx rsi, byte ptr [rcx+0x08]
- mov ecx, dword ptr [rcx+0x0C]
- cmp ecx, 999
- setg cl
- movzx rcx, cl
- and ecx, esi
- jne G_M21921_IG17
+ ;; size=33 bbWeight=1 PerfScore 9.00
+G_M21921_IG22:
+ add rdi, 4
+ movzx rdx, byte ptr [rdi+0x08]
+ mov edi, dword ptr [rdi+0x0C]
+ cmp edi, 999
+ setg dil
+ movzx rdi, dil
+ and edi, edx
+ jne G_M21921_IG16
jmp G_M21921_IG13
- ;; size=37 bbWeight=1 PerfScore 9.00
-G_M21921_IG24:
- add rcx, 4
- movzx rsi, byte ptr [rcx+0x08]
- mov ecx, dword ptr [rcx+0x0C]
- test ecx, ecx
- setle cl
- movzx rcx, cl
- and ecx, esi
- jne G_M21921_IG17
+ ;; size=38 bbWeight=1 PerfScore 9.00
+G_M21921_IG23:
+ add rdi, 4
+ movzx rdx, byte ptr [rdi+0x08]
+ mov edi, dword ptr [rdi+0x0C]
+ test edi, edi
+ setle dil
+ movzx rdi, dil
+ and edi, edx
+ jne G_M21921_IG16
jmp G_M21921_IG14
- ;; size=33 bbWeight=1 PerfScore 9.00
-G_M21921_IG25:
- add rdx, 4
- movzx rax, byte ptr [rdx]
- mov ecx, dword ptr [rdx+0x04]
+ ;; size=34 bbWeight=1 PerfScore 9.00
+G_M21921_IG24:
+ add r15, 4
+ movzx rax, byte ptr [r15]
+ mov ecx, dword ptr [r15+0x04]
shr ecx, 31
and eax, ecx
- jne G_M21921_IG17
+ jne G_M21921_IG16
jmp G_M21921_IG15
- ;; size=26 bbWeight=1 PerfScore 8.00
-G_M21921_IG26:
+ ;; size=28 bbWeight=1 PerfScore 8.00
+G_M21921_IG25:
mov eax, dword ptr [rbp-0x1F4]
;; size=6 bbWeight=1 PerfScore 1.00
-G_M21921_IG27:
+G_M21921_IG26:
add rsp, 512
pop rbx
pop r13
pop r14
pop r15
pop rbp
ret
;; size=16 bbWeight=1 PerfScore 3.75
-G_M21921_IG28:
+G_M21921_IG27:
push rbp
push r15
push r14
push r13
push rbx
sub rsp, 16
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
lea rbp, [rbp+0x220]
;; size=26 bbWeight=0 PerfScore 0.00
-G_M21921_IG29:
+G_M21921_IG28:
xor eax, eax
- mov rbx, bword ptr [rbp-0x200]
- mov qword ptr [rbx], rax
+ mov rdi, bword ptr [rbp-0x200]
+ mov qword ptr [rdi], rax
mov ecx, 424
;; size=17 bbWeight=0 PerfScore 0.00
-G_M21921_IG30:
- mov qword ptr [rbx+rcx], rax
+G_M21921_IG29:
+ mov qword ptr [rdi+rcx], rax
sub rcx, 8
- jne SHORT G_M21921_IG30
+ jne SHORT G_M21921_IG29
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG31:
+G_M21921_IG30:
mov r8, bword ptr [rbp-0x208]
mov dword ptr [r8], eax
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG32:
- mov r9, bword ptr [rbp-0x210]
- mov gword ptr [r9], rax
+G_M21921_IG31:
+ mov rcx, bword ptr [rbp-0x210]
+ mov gword ptr [rcx], rax
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG33:
+G_M21921_IG32:
mov dword ptr [rbp-0x1F4], eax
- lea rax, G_M21921_IG26
+ lea rax, G_M21921_IG25
;; size=13 bbWeight=0 PerfScore 0.00
-G_M21921_IG34:
+G_M21921_IG33:
add rsp, 16
pop rbx
pop r13
pop r14
pop r15
pop rbp
ret
;; size=13 bbWeight=0 PerfScore 0.00
-G_M21921_IG35:
+G_M21921_IG34:
push rbp
push r15
push r14
push r13
push rbx
sub rsp, 16
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
lea rbp, [rbp+0x220]
;; size=26 bbWeight=0 PerfScore 0.00
-G_M21921_IG36:
+G_M21921_IG35:
xor eax, eax
- mov rbx, bword ptr [rbp-0x200]
- mov qword ptr [rbx], rax
+ mov rdi, bword ptr [rbp-0x200]
+ mov qword ptr [rdi], rax
mov ecx, 424
;; size=17 bbWeight=0 PerfScore 0.00
-G_M21921_IG37:
- mov qword ptr [rbx+rcx], rax
+G_M21921_IG36:
+ mov qword ptr [rdi+rcx], rax
sub rcx, 8
- jne SHORT G_M21921_IG37
+ jne SHORT G_M21921_IG36
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG38:
+G_M21921_IG37:
mov r8, bword ptr [rbp-0x208]
mov dword ptr [r8], eax
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG39:
- mov r9, bword ptr [rbp-0x210]
- mov gword ptr [r9], rax
+G_M21921_IG38:
+ mov rcx, bword ptr [rbp-0x210]
+ mov gword ptr [rcx], rax
;; size=10 bbWeight=0 PerfScore 0.00
-G_M21921_IG40:
+G_M21921_IG39:
mov dword ptr [rbp-0x1F4], eax
- lea rax, G_M21921_IG26
+ lea rax, G_M21921_IG25
;; size=13 bbWeight=0 PerfScore 0.00
-G_M21921_IG41:
+G_M21921_IG40:
add rsp, 16
pop rbx
pop r13
pop r14
pop r15
pop rbp
ret
;; size=13 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1234, prolog size 112, PerfScore 235.33, instruction count 304, allocated bytes for code 1234 (MethodHash=3323aa5e) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte (FullOpts)
+; Total bytes of code 1073, prolog size 112, PerfScore 168.33, instruction count 259, allocated bytes for code 1073 (MethodHash=3323aa5e) for method System.Security.Cryptography.Pkcs.Rfc3161TimestampTokenInfo:TryDecode(System.ReadOnlyMemory`1[ubyte],ubyte,byref,byref,byref):ubyte (FullOpts)
-152 (-16.68 % of base) - System.Text.Json.ReadStack:Push():this
; Assembly listing for method System.Text.Json.ReadStack:Push():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; 15 single block inlinees; 4 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 34, 19 ) byref -> rbx this single-def
;* V01 loc0 [V01 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V02 loc1 [V02 ] ( 0, 0 ) struct ( 8) zero-ref <System.Nullable`1[int]>
;* V03 loc2 [V03 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.Nullable`1[int]>
-; V04 loc3 [V04,T23] ( 3, 1.50) int -> rcx
+; V04 loc3 [V04,T24] ( 3, 1.50) int -> rcx
;# V05 OutArgs [V05 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V06 tmp1 [V06,T04] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame[]>
; V07 tmp2 [V07,T11] ( 3, 3 ) int -> r8 "Strict ordering of exceptions for Array store"
-; V08 tmp3 [V08,T19] ( 2, 2 ) struct (112) [rbp-0x98] do-not-enreg[S] must-init "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame>
+; V08 tmp3 [V08,T20] ( 2, 2 ) struct (112) [rbp-0x98] do-not-enreg[S] must-init "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame>
; V09 tmp4 [V09,T05] ( 3, 3 ) ref -> rdi class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V10 tmp5 [V10 ] ( 0, 0 ) ref -> zero-ref single-def
-; V11 tmp6 [V11,T21] ( 3, 1.50) ref -> r15
+; V11 tmp6 [V11,T22] ( 3, 1.50) ref -> r15
; V12 tmp7 [V12,T03] ( 6, 3 ) ref -> r15
; V13 tmp8 [V13,T06] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame[]>
; V14 tmp9 [V14,T12] ( 3, 3 ) int -> r8 "Strict ordering of exceptions for Array store"
-; V15 tmp10 [V15,T20] ( 2, 2 ) struct (112) [rbp-0x108] do-not-enreg[S] must-init "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame>
+; V15 tmp10 [V15,T21] ( 2, 2 ) struct (112) [rbp-0x108] do-not-enreg[S] must-init "Strict ordering of exceptions for Array store" <System.Text.Json.ReadStackFrame>
;* V16 tmp11 [V16 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
; V17 tmp12 [V17,T07] ( 3, 3 ) byref -> rcx single-def "impAppendStmt"
;* V18 tmp13 [V18 ] ( 0, 0 ) byref -> zero-ref single-def
;* V19 tmp14 [V19 ] ( 0, 0 ) byref -> zero-ref
;* V20 tmp15 [V20 ] ( 0, 0 ) struct ( 8) zero-ref <System.Nullable`1[int]>
;* V21 tmp16 [V21 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
-; V22 tmp17 [V22,T27] ( 2, 1 ) byref -> r12 single-def
+; V22 tmp17 [V22,T28] ( 2, 1 ) byref -> r12 single-def
;* V23 tmp18 [V23 ] ( 0, 0 ) byref -> zero-ref
; V24 tmp19 [V24,T17] ( 4, 2 ) int -> rdi
; V25 tmp20 [V25,T08] ( 3, 3 ) ref -> rcx class-hnd exact single-def "dup spill" <System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver>
;* V26 tmp21 [V26 ] ( 0, 0 ) byref -> zero-ref single-def
;* V27 tmp22 [V27 ] ( 0, 0 ) ref -> zero-ref single-def
;* V28 tmp23 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V29 tmp24 [V29,T14] ( 4, 2 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V30 tmp25 [V30,T18] ( 2, 2 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
;* V31 tmp26 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V32 tmp27 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V33 tmp28 [V33,T15] ( 4, 2 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V34 tmp29 [V34,T09] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V35 tmp30 [V35,T22] ( 3, 1.50) byref -> rbx single-def "Inline stloc first use temp"
+; V35 tmp30 [V35,T23] ( 3, 1.50) byref -> rbx single-def "Inline stloc first use temp"
;* V36 tmp31 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" <System.Text.Json.ArgumentState>
; V37 tmp32 [V37,T02] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
-; V38 tmp33 [V38,T24] ( 3, 1.50) ubyte -> r14 "field V02.hasValue (fldOffset=0x0)" P-INDEP
-; V39 tmp34 [V39,T28] ( 2, 1 ) int -> r13 "field V02.value (fldOffset=0x4)" P-INDEP
+; V38 tmp33 [V38,T25] ( 3, 1.50) ubyte -> r14 "field V02.hasValue (fldOffset=0x0)" P-INDEP
+; V39 tmp34 [V39,T29] ( 2, 1 ) int -> r13 "field V02.value (fldOffset=0x4)" P-INDEP
;* V40 tmp35 [V40 ] ( 0, 0 ) ubyte -> zero-ref "field V03.hasValue (fldOffset=0x0)" P-INDEP
;* V41 tmp36 [V41 ] ( 0, 0 ) int -> zero-ref "field V03.value (fldOffset=0x4)" P-INDEP
-; V42 tmp37 [V42,T25] ( 3, 1.50) ubyte -> rsi "field V20.hasValue (fldOffset=0x0)" P-INDEP
-; V43 tmp38 [V43,T26] ( 3, 1.50) int -> rdi "field V20.value (fldOffset=0x4)" P-INDEP
-; V44 tmp39 [V44,T10] ( 3, 3 ) ref -> rcx single-def "arr expr"
-; V45 tmp40 [V45,T13] ( 3, 3 ) int -> rdi "index expr"
+; V42 tmp37 [V42,T26] ( 3, 1.50) ubyte -> rsi "field V20.hasValue (fldOffset=0x0)" P-INDEP
+; V43 tmp38 [V43,T27] ( 3, 1.50) int -> rdi "field V20.value (fldOffset=0x4)" P-INDEP
+; V44 tmp39 [V44,T10] ( 3, 3 ) ref -> rdi single-def "arr expr"
+; V45 tmp40 [V45,T13] ( 3, 3 ) int -> rsi "index expr"
; V46 cse0 [V46,T01] ( 8, 4 ) byref -> r12 multi-def "CSE #02: aggressive"
; V47 cse1 [V47,T16] ( 4, 2 ) ref -> r12 "CSE #01: moderate"
+; V48 rat0 [V48,T19] ( 2, 2 ) byref -> rsi "fgMakeTemp is creating a new local variable"
;
; Lcl frame size = 232
G_M50865_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-0x108], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x100], xmm8
mov rax, -192
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
;; size=88 bbWeight=1 PerfScore 19.08
G_M50865_IG02:
cmp dword ptr [rbx+0x24], 0
- jne G_M50865_IG16
+ jne G_M50865_IG15
;; size=10 bbWeight=1 PerfScore 4.00
G_M50865_IG03:
cmp dword ptr [rbx+0x20], 0
jne SHORT G_M50865_IG04
mov dword ptr [rbx+0x20], 1
- jmp G_M50865_IG19
+ jmp G_M50865_IG17
;; size=18 bbWeight=0.50 PerfScore 3.50
G_M50865_IG04:
mov rdi, gword ptr [rbx+0x30]
test rdi, rdi
jne SHORT G_M50865_IG05
xor r15, r15
jmp SHORT G_M50865_IG06
;; size=14 bbWeight=0.50 PerfScore 2.75
G_M50865_IG05:
mov r15, gword ptr [rdi+0x78]
cmp byte ptr [r15+0x105], 2
je SHORT G_M50865_IG06
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:<EnsureConfigured>g__ConfigureSynchronized|172_0():this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:<EnsureConfigured>g__ConfigureSynchronized|172_0():this
;; size=29 bbWeight=0.50 PerfScore 4.75
G_M50865_IG06:
test r15, r15
jne SHORT G_M50865_IG07
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x20]
mov rdi, gword ptr [rdi+0x28]
mov r15, gword ptr [rdi+0x78]
cmp byte ptr [r15+0x105], 2
je SHORT G_M50865_IG07
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:<EnsureConfigured>g__ConfigureSynchronized|172_0():this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:<EnsureConfigured>g__ConfigureSynchronized|172_0():this
;; size=46 bbWeight=0.50 PerfScore 8.38
G_M50865_IG07:
movzx r14, byte ptr [rbx+0x94]
mov r13d, dword ptr [rbx+0x98]
mov r12, gword ptr [rbx]
test r12, r12
jne SHORT G_M50865_IG08
mov rdi, 0xD1FFAB1E ; System.Text.Json.ReadStackFrame[]
mov esi, 4
call CORINFO_HELP_NEWARR_1_VC
mov rsi, rax
mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp SHORT G_M50865_IG09
;; size=56 bbWeight=0.50 PerfScore 6.12
G_M50865_IG08:
mov esi, dword ptr [rbx+0x20]
dec esi
cmp esi, dword ptr [r12+0x08]
jne SHORT G_M50865_IG09
mov esi, dword ptr [r12+0x08]
add esi, esi
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Array:Resize[System.Text.Json.ReadStackFrame](byref,int)
call [rax]System.Array:Resize[System.Text.Json.ReadStackFrame](byref,int)
;; size=34 bbWeight=0.50 PerfScore 6.00
G_M50865_IG09:
mov rdx, gword ptr [rbx]
mov r8d, dword ptr [rbx+0x20]
dec r8d
lea r12, bword ptr [rbx+0x30]
lea rdi, bword ptr [rbp-0x108]
mov rsi, r12
mov ecx, 14
rep movsq
cmp r8d, dword ptr [rdx+0x08]
- jae G_M50865_IG23
- mov ecx, r8d
- imul rcx, rcx, 112
- lea rdi, bword ptr [rdx+rcx+0x10]
- lea rsi, bword ptr [rbp-0x108]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 4
- rep movsq
+ jae G_M50865_IG21
+ mov edi, r8d
+ imul rdi, rdi, 112
+ lea rdi, bword ptr [rdx+rdi+0x10]
+ lea rsi, [rbp-0x108]
+ mov edx, 80
+ call CORINFO_HELP_ASSIGN_STRUCT
xor edi, edi
mov qword ptr [r12], rdi
mov qword ptr [r12+0x08], rdi
mov qword ptr [r12+0x10], rdi
mov qword ptr [r12+0x18], rdi
mov qword ptr [r12+0x20], rdi
mov qword ptr [r12+0x28], rdi
mov qword ptr [r12+0x30], rdi
mov qword ptr [r12+0x38], rdi
mov qword ptr [r12+0x40], rdi
mov qword ptr [r12+0x48], rdi
mov qword ptr [r12+0x50], rdi
mov qword ptr [r12+0x58], rdi
mov qword ptr [r12+0x60], rdi
mov qword ptr [r12+0x68], rdi
inc dword ptr [rbx+0x20]
lea rdi, bword ptr [rbx+0x58]
- ;; size=197 bbWeight=0.50 PerfScore 45.75
-G_M50865_IG10:
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rsi, gword ptr [r15+0xC8]
lea rdi, bword ptr [rbx+0x30]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rcx, r12
test r14d, r14d
- jne SHORT G_M50865_IG11
+ jne SHORT G_M50865_IG10
mov rdi, gword ptr [rbx+0x30]
movzx rsi, byte ptr [rdi+0xB8]
mov edi, dword ptr [rdi+0xBC]
- jmp SHORT G_M50865_IG12
- ;; size=52 bbWeight=0.50 PerfScore 7.12
-G_M50865_IG11:
+ jmp SHORT G_M50865_IG11
+ ;; size=201 bbWeight=0.50 PerfScore 35.88
+G_M50865_IG10:
movzx rsi, r14b
mov edi, r13d
;; size=7 bbWeight=0.50 PerfScore 0.25
-G_M50865_IG12:
+G_M50865_IG11:
mov byte ptr [rcx+0x64], sil
mov dword ptr [rcx+0x68], edi
cmp byte ptr [rbx+0x29], 0
- jne SHORT G_M50865_IG14
+ jne SHORT G_M50865_IG13
mov rcx, gword ptr [r15+0x88]
test rcx, rcx
- jne SHORT G_M50865_IG13
+ jne SHORT G_M50865_IG12
xor edi, edi
- jmp SHORT G_M50865_IG15
+ jmp SHORT G_M50865_IG14
;; size=29 bbWeight=0.50 PerfScore 5.75
-G_M50865_IG13:
+G_M50865_IG12:
movzx rdi, byte ptr [rcx+0x34]
- jmp SHORT G_M50865_IG15
+ jmp SHORT G_M50865_IG14
;; size=7 bbWeight=0.50 PerfScore 2.00
-G_M50865_IG14:
+G_M50865_IG13:
mov edi, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
-G_M50865_IG15:
+G_M50865_IG14:
mov byte ptr [r12+0x5B], dil
- jmp G_M50865_IG19
+ jmp G_M50865_IG17
;; size=10 bbWeight=0.50 PerfScore 1.50
-G_M50865_IG16:
+G_M50865_IG15:
mov ecx, dword ptr [rbx+0x20]
lea edi, [rcx+0x01]
mov dword ptr [rbx+0x20], edi
test ecx, ecx
- jle G_M50865_IG18
+ jle SHORT G_M50865_IG16
mov rdx, gword ptr [rbx]
mov r8d, dword ptr [rbx+0x20]
add r8d, -2
lea r12, bword ptr [rbx+0x30]
lea rdi, bword ptr [rbp-0x98]
mov rsi, r12
mov ecx, 14
rep movsq
cmp r8d, dword ptr [rdx+0x08]
- jae G_M50865_IG23
- mov ecx, r8d
- imul rcx, rcx, 112
- lea rdi, bword ptr [rdx+rcx+0x10]
- lea rsi, bword ptr [rbp-0x98]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 4
- rep movsq
- mov rcx, gword ptr [rbx]
- mov edi, dword ptr [rbx+0x20]
- dec edi
- cmp edi, dword ptr [rcx+0x08]
- jae G_M50865_IG23
+ jae G_M50865_IG21
+ mov edi, r8d
imul rdi, rdi, 112
- lea rsi, bword ptr [rcx+rdi+0x10]
+ lea rdi, bword ptr [rdx+rdi+0x10]
+ lea rsi, [rbp-0x98]
+ mov edx, 80
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rdi, gword ptr [rbx]
+ mov esi, dword ptr [rbx+0x20]
+ dec esi
+ cmp esi, dword ptr [rdi+0x08]
+ jae SHORT G_M50865_IG21
+ imul rsi, rsi, 112
+ lea rsi, bword ptr [rdi+rsi+0x10]
mov rdi, r12
- call CORINFO_HELP_ASSIGN_BYREF
- ;; size=171 bbWeight=0.50 PerfScore 45.50
-G_M50865_IG17:
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 4
- rep movsq
- ;; size=53 bbWeight=0.50 PerfScore 17.12
-G_M50865_IG18:
+ mov edx, 80
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=120 bbWeight=0.50 PerfScore 28.62
+G_M50865_IG16:
mov edi, dword ptr [rbx+0x24]
cmp edi, dword ptr [rbx+0x20]
- jne SHORT G_M50865_IG19
+ jne SHORT G_M50865_IG17
xor edi, edi
mov dword ptr [rbx+0x24], edi
;; size=13 bbWeight=0.50 PerfScore 3.62
-G_M50865_IG19:
+G_M50865_IG17:
mov rdi, gword ptr [rbx+0x58]
cmp gword ptr [rdi+0x08], 0
- je SHORT G_M50865_IG21
+ je SHORT G_M50865_IG19
;; size=11 bbWeight=1 PerfScore 6.00
-G_M50865_IG20:
+G_M50865_IG18:
add rbx, 112
cmp gword ptr [rbx], 0
- jne SHORT G_M50865_IG21
+ jne SHORT G_M50865_IG19
mov rdi, 0xD1FFAB1E ; System.Text.Json.ArgumentState
call CORINFO_HELP_NEWSFAST
mov rsi, rax
mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=36 bbWeight=0.50 PerfScore 3.50
-G_M50865_IG21:
+G_M50865_IG19:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M50865_IG22:
+G_M50865_IG20:
add rsp, 232
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M50865_IG23:
+G_M50865_IG21:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 911, prolog size 85, PerfScore 197.33, instruction count 218, allocated bytes for code 911 (MethodHash=8233394e) for method System.Text.Json.ReadStack:Push():this (FullOpts)
+; Total bytes of code 759, prolog size 85, PerfScore 146.33, instruction count 188, allocated bytes for code 759 (MethodHash=8233394e) for method System.Text.Json.ReadStack:Push():this (FullOpts)
-144 (-5.20 % of base) - Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+d__3:MoveNext():this
; Assembly listing for method Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3:MoveNext():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; 60 single block inlinees; 20 inlinees without PGO data
+; 0 inlinees with PGO data; 58 single block inlinees; 19 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 74, 50 ) byref -> [rbp-0xA0] this EH-live single-def
-; V01 loc0 [V01,T10] ( 6, 5.80) int -> rbx
-; V02 loc1 [V02,T04] ( 10, 6 ) ref -> [rbp-0xA8] class-hnd exact EH-live spill-single-def <Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler>
-; V03 loc2 [V03,T12] ( 4, 4 ) ref -> rbx class-hnd single-def <System.Net.Http.HttpResponseMessage>
-; V04 loc3 [V04,T37] ( 3, 3 ) ref -> rsi class-hnd <System.Object>
+; V01 loc0 [V01,T07] ( 6, 5.80) int -> rbx
+; V02 loc1 [V02,T08] ( 9, 5 ) ref -> [rbp-0xA8] class-hnd exact EH-live spill-single-def <Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler>
+; V03 loc2 [V03,T10] ( 4, 4 ) ref -> r15 class-hnd single-def <System.Net.Http.HttpResponseMessage>
+; V04 loc3 [V04,T35] ( 3, 3 ) ref -> rsi class-hnd <System.Object>
;* V05 loc4 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Object>
; V06 loc5 [V06 ] ( 12, 12 ) struct (24) [rbp-0x40] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Object]>
; V07 loc6 [V07 ] ( 4, 4 ) struct (24) [rbp-0x58] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Threading.Tasks.ValueTask`1[System.Object]>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Object]>
;* V09 loc8 [V09 ] ( 0, 0 ) int -> zero-ref single-def
;* V10 loc9 [V10 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Net.Http.HttpResponseMessage>
; V11 loc10 [V11 ] ( 10, 10 ) struct (16) [rbp-0x68] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.Net.Http.HttpResponseMessage]>
;* V12 loc11 [V12 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1[System.Net.Http.HttpResponseMessage]>
; V13 loc12 [V13 ] ( 10, 10 ) struct (16) [rbp-0x78] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
; V14 loc13 [V14 ] ( 6, 3 ) struct (16) [rbp-0x88] do-not-enreg[SBR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V15 loc14 [V15 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V16 loc15 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V17 loc16 [V17,T69] ( 3, 0 ) ref -> rbx class-hnd single-def <System.Exception>
+; V17 loc16 [V17,T66] ( 3, 0 ) ref -> r15 class-hnd single-def <System.Exception>
; V18 loc17 [V18 ] ( 10, 0 ) struct (16) [rbp-0x98] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V19 loc18 [V19,T70] ( 3, 0 ) ref -> rax class-hnd <System.Exception>
+; V19 loc18 [V19,T67] ( 3, 0 ) ref -> rax class-hnd <System.Exception>
; V20 OutArgs [V20 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V21 tmp1 [V21 ] ( 0, 0 ) int -> zero-ref "dup spill"
;* V22 tmp2 [V22 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V23 tmp3 [V23,T19] ( 2, 4 ) ref -> rbx class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientLogger>
-; V24 tmp4 [V24,T20] ( 2, 4 ) ref -> r15 class-hnd single-def "impAppendStmt" <System.Object>
-; V25 tmp5 [V25,T21] ( 2, 4 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
-; V26 tmp6 [V26,T22] ( 2, 4 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
+; V23 tmp3 [V23,T17] ( 2, 4 ) ref -> r15 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientLogger>
+; V24 tmp4 [V24,T18] ( 2, 4 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Object>
+; V25 tmp5 [V25,T19] ( 2, 4 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
+; V26 tmp6 [V26,T20] ( 2, 4 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
;* V27 tmp7 [V27 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.TimeSpan>
-; V28 tmp8 [V28,T23] ( 2, 4 ) ref -> rbx class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger>
-; V29 tmp9 [V29,T24] ( 2, 4 ) ref -> r15 class-hnd single-def "impAppendStmt" <System.Object>
-; V30 tmp10 [V30,T25] ( 2, 4 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
-; V31 tmp11 [V31,T26] ( 2, 4 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
+; V28 tmp8 [V28,T21] ( 2, 4 ) ref -> r15 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger>
+; V29 tmp9 [V29,T22] ( 2, 4 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Object>
+; V30 tmp10 [V30,T23] ( 2, 4 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
+; V31 tmp11 [V31,T24] ( 2, 4 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
;* V32 tmp12 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.TimeSpan>
;* V33 tmp13 [V33 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SR] multireg-ret "Return value temp for multireg return" <System.Threading.Tasks.ValueTask>
;* V34 tmp14 [V34 ] ( 0, 0 ) int -> zero-ref "dup spill"
;* V35 tmp15 [V35 ] ( 0, 0 ) int -> zero-ref "dup spill"
;* V36 tmp16 [V36 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V37 tmp17 [V37,T72] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V38 tmp18 [V38,T73] ( 2, 0 ) ref -> r14 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientLogger>
-; V39 tmp19 [V39,T74] ( 2, 0 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Object>
-; V40 tmp20 [V40,T75] ( 2, 0 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
-; V41 tmp21 [V41,T76] ( 2, 0 ) ref -> [rbp-0xB0] class-hnd spill-single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
+; V37 tmp17 [V37,T69] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V38 tmp18 [V38,T70] ( 2, 0 ) ref -> r14 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientLogger>
+; V39 tmp19 [V39,T71] ( 2, 0 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Object>
+; V40 tmp20 [V40,T72] ( 2, 0 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
+; V41 tmp21 [V41,T73] ( 2, 0 ) ref -> [rbp-0xB0] class-hnd spill-single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
;* V42 tmp22 [V42 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.TimeSpan>
-; V43 tmp23 [V43,T77] ( 2, 0 ) ref -> r14 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger>
-; V44 tmp24 [V44,T78] ( 2, 0 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Object>
-; V45 tmp25 [V45,T79] ( 2, 0 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
-; V46 tmp26 [V46,T80] ( 2, 0 ) ref -> [rbp-0xB8] class-hnd spill-single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
+; V43 tmp23 [V43,T74] ( 2, 0 ) ref -> r14 class-hnd single-def "impAppendStmt" <Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger>
+; V44 tmp24 [V44,T75] ( 2, 0 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Object>
+; V45 tmp25 [V45,T76] ( 2, 0 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Net.Http.HttpRequestMessage>
+; V46 tmp26 [V46,T77] ( 2, 0 ) ref -> [rbp-0xB8] class-hnd spill-single-def "impAppendStmt" <System.Net.Http.HttpResponseMessage>
;* V47 tmp27 [V47 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.TimeSpan>
;* V48 tmp28 [V48 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SR] multireg-ret "Return value temp for multireg return" <System.Threading.Tasks.ValueTask>
;* V49 tmp29 [V49 ] ( 0, 0 ) int -> zero-ref "dup spill"
;* V50 tmp30 [V50 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V51 tmp31 [V51,T81] ( 2, 0 ) ref -> rdx class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V51 tmp31 [V51,T78] ( 2, 0 ) ref -> rdx class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
;* V52 tmp32 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Net.Http.HttpRequestMessage>
;* V53 tmp33 [V53 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.Internal.ValueStopwatch>
;* V54 tmp34 [V54 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V55 tmp35 [V55 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.Object]>
;* V56 tmp36 [V56 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.Object]>
;* V57 tmp37 [V57 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Object]>
-; V58 tmp38 [V58,T27] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Object>
-; V59 tmp39 [V59,T28] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.__Canon>
-; V60 tmp40 [V60,T34] ( 2, 4 ) short -> rax "Inlining Arg"
+; V58 tmp38 [V58,T25] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Object>
+; V59 tmp39 [V59,T26] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.__Canon>
+; V60 tmp40 [V60,T32] ( 2, 4 ) short -> rax "Inlining Arg"
;* V61 tmp41 [V61 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Object]>
-;* V62 tmp42 [V62,T59] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V63 tmp43 [V63,T13] ( 4, 4 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V64 tmp44 [V64,T38] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Object]>
+;* V62 tmp42 [V62,T56] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V63 tmp43 [V63,T11] ( 4, 4 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V64 tmp44 [V64,T36] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Object]>
;* V65 tmp45 [V65 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Object]>
;* V66 tmp46 [V66 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V67 tmp47 [V67 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V68 tmp48 [V68 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V69 tmp49 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V70 tmp50 [V70,T14] ( 4, 4 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Object>
-; V71 tmp51 [V71,T15] ( 4, 4 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V72 tmp52 [V72,T11] ( 5, 5 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Object]>
+; V70 tmp50 [V70,T12] ( 4, 4 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Object>
+; V71 tmp51 [V71,T13] ( 4, 4 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V72 tmp52 [V72,T09] ( 5, 5 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Object]>
;* V73 tmp53 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Object]>
-; V74 tmp54 [V74,T05] ( 3, 6 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Net.Http.HttpRequestMessage>
-;* V75 tmp55 [V75 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Threading.CancellationToken>
-; V76 tmp56 [V76,T06] ( 3, 6 ) ref -> rax class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
-;* V77 tmp57 [V77 ] ( 0, 0 ) ref -> zero-ref
-;* V78 tmp58 [V78 ] ( 0, 0 ) ref -> zero-ref single-def
-;* V79 tmp59 [V79 ] ( 0, 0 ) int -> zero-ref single-def
-;* V80 tmp60 [V80 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1[System.Net.Http.HttpResponseMessage]>
-;* V81 tmp61 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.Net.Http.HttpResponseMessage]>
-;* V82 tmp62 [V82,T60] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V83 tmp63 [V83,T29] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
-;* V84 tmp64 [V84 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V85 tmp65 [V85 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V86 tmp66 [V86 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V87 tmp67 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V88 tmp68 [V88,T07] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
-; V89 tmp69 [V89,T30] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
-;* V90 tmp70 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V91 tmp71 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V92 tmp72 [V92 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-;* V93 tmp73 [V93 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
-; V94 tmp74 [V94,T35] ( 2, 4 ) short -> rsi "Inlining Arg"
-;* V95 tmp75 [V95 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V96 tmp76 [V96,T61] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V97 tmp77 [V97,T16] ( 4, 4 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V98 tmp78 [V98,T39] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V99 tmp79 [V99 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V100 tmp80 [V100 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V101 tmp81 [V101 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V102 tmp82 [V102 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V103 tmp83 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V104 tmp84 [V104,T17] ( 4, 4 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V105 tmp85 [V105,T18] ( 4, 4 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V106 tmp86 [V106 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V107 tmp87 [V107 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V108 tmp88 [V108 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V109 tmp89 [V109 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-;* V110 tmp90 [V110 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
-; V111 tmp91 [V111,T84] ( 2, 0 ) short -> rsi "Inlining Arg"
-;* V112 tmp92 [V112 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V113 tmp93 [V113,T88] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V114 tmp94 [V114,T66] ( 4, 0 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V115 tmp95 [V115,T71] ( 3, 0 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V116 tmp96 [V116 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V117 tmp97 [V117 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V118 tmp98 [V118 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V119 tmp99 [V119 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V120 tmp100 [V120 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V121 tmp101 [V121,T67] ( 4, 0 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V122 tmp102 [V122,T68] ( 4, 0 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V123 tmp103 [V123 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V124 tmp104 [V124,T02] ( 4, 8 ) byref -> r15 single-def "Inlining Arg"
-; V125 tmp105 [V125,T40] ( 3, 3 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
-;* V126 tmp106 [V126 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd single-def "Inlining Arg" <System.Net.Http.HttpResponseMessage>
-; V127 tmp107 [V127,T03] ( 4, 8 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
-;* V128 tmp108 [V128 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;* V129 tmp109 [V129 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Net.Http.HttpResponseMessage>
-;* V130 tmp110 [V130 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-; V131 tmp111 [V131,T08] ( 3, 6 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
-; V132 tmp112 [V132,T01] ( 6, 12 ) ref -> r14 class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TplEventSource>
-;* V133 tmp113 [V133 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Threading.Tasks.TplEventSource>
-; V134 tmp114 [V134,T36] ( 2, 4 ) int -> r13 "Inlining Arg"
-;* V135 tmp115 [V135,T52] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V136 tmp116 [V136 ] ( 2, 2 ) ref -> [rbp-0x58] do-not-enreg[X] addr-exposed "field V07._obj (fldOffset=0x0)" P-DEP
-; V137 tmp117 [V137 ] ( 2, 2 ) ref -> [rbp-0x50] do-not-enreg[X] addr-exposed "field V07._result (fldOffset=0x8)" P-DEP
-; V138 tmp118 [V138 ] ( 2, 2 ) short -> [rbp-0x48] do-not-enreg[X] addr-exposed "field V07._token (fldOffset=0x10)" P-DEP
-; V139 tmp119 [V139 ] ( 1, 1 ) ubyte -> [rbp-0x46] do-not-enreg[X] addr-exposed "field V07._continueOnCapturedContext (fldOffset=0x12)" P-DEP
-; V140 tmp120 [V140 ] ( 7, 7 ) ref -> [rbp-0x68] do-not-enreg[X] addr-exposed "field V11.m_task (fldOffset=0x0)" P-DEP
-; V141 tmp121 [V141 ] ( 5, 5 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed "field V11.m_options (fldOffset=0x8)" P-DEP
-; V142 tmp122 [V142,T45] ( 4, 2 ) ref -> [rbp-0x88] do-not-enreg[] "field V14._obj (fldOffset=0x0)" P-DEP
-; V143 tmp123 [V143,T46] ( 4, 2 ) short -> [rbp-0x80] do-not-enreg[] "field V14._token (fldOffset=0x8)" P-DEP
-; V144 tmp124 [V144,T58] ( 2, 1 ) ubyte -> [rbp-0x7E] do-not-enreg[] "field V14._continueOnCapturedContext (fldOffset=0xa)" P-DEP
-; V145 tmp125 [V145,T53] ( 2, 2 ) long -> r8 "field V27._ticks (fldOffset=0x0)" P-INDEP
-; V146 tmp126 [V146,T54] ( 2, 2 ) long -> r8 "field V32._ticks (fldOffset=0x0)" P-INDEP
-; V147 tmp127 [V147,T85] ( 2, 0 ) long -> r9 "field V42._ticks (fldOffset=0x0)" P-INDEP
-; V148 tmp128 [V148,T86] ( 2, 0 ) long -> r9 "field V47._ticks (fldOffset=0x0)" P-INDEP
-; V149 tmp129 [V149,T55] ( 2, 2 ) long -> rax single-def "field V53._startTimestamp (fldOffset=0x0)" P-INDEP
-; V150 tmp130 [V150,T47] ( 2, 2 ) ref -> rsi single-def "field V55._obj (fldOffset=0x0)" P-INDEP
-; V151 tmp131 [V151,T48] ( 2, 2 ) ref -> rdi single-def "field V55._result (fldOffset=0x8)" P-INDEP
-; V152 tmp132 [V152,T56] ( 2, 2 ) short -> rax single-def "field V55._token (fldOffset=0x10)" P-INDEP
-;* V153 tmp133 [V153,T62] ( 0, 0 ) ubyte -> zero-ref single-def "field V55._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
-; V154 tmp134 [V154,T49] ( 2, 2 ) ref -> r15 single-def "field V75._source (fldOffset=0x0)" P-INDEP
-; V155 tmp135 [V155,T50] ( 2, 2 ) ref -> rax single-def "field V81.m_task (fldOffset=0x0)" P-INDEP
-;* V156 tmp136 [V156,T63] ( 0, 0 ) int -> zero-ref single-def "field V81.m_options (fldOffset=0x8)" P-INDEP
-; V157 tmp137 [V157,T51] ( 2, 2 ) ref -> rdi single-def "field V90._obj (fldOffset=0x0)" P-INDEP
-; V158 tmp138 [V158,T57] ( 2, 2 ) short -> rsi single-def "field V90._token (fldOffset=0x8)" P-INDEP
-;* V159 tmp139 [V159,T64] ( 0, 0 ) ubyte -> zero-ref single-def "field V90._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V160 tmp140 [V160 ] ( 0, 0 ) ref -> zero-ref "field V91._obj (fldOffset=0x0)" P-INDEP
-;* V161 tmp141 [V161 ] ( 0, 0 ) short -> zero-ref "field V91._token (fldOffset=0x8)" P-INDEP
-;* V162 tmp142 [V162 ] ( 0, 0 ) ubyte -> zero-ref "field V91._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V163 tmp143 [V163,T82] ( 2, 0 ) ref -> rdi single-def "field V107._obj (fldOffset=0x0)" P-INDEP
-; V164 tmp144 [V164,T87] ( 2, 0 ) short -> rsi single-def "field V107._token (fldOffset=0x8)" P-INDEP
-;* V165 tmp145 [V165,T89] ( 0, 0 ) ubyte -> zero-ref single-def "field V107._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V166 tmp146 [V166 ] ( 0, 0 ) ref -> zero-ref "field V108._obj (fldOffset=0x0)" P-INDEP
-;* V167 tmp147 [V167 ] ( 0, 0 ) short -> zero-ref "field V108._token (fldOffset=0x8)" P-INDEP
-;* V168 tmp148 [V168 ] ( 0, 0 ) ubyte -> zero-ref "field V108._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V169 tmp149 [V169 ] ( 0, 0 ) ref -> zero-ref "field V128._source (fldOffset=0x0)" P-INDEP
-; V170 tmp150 [V170,T31] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
-; V171 tmp151 [V171,T09] ( 3, 6 ) ref -> rax single-def "argument with side effect"
-; V172 tmp152 [V172,T32] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
-; V173 tmp153 [V173,T33] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
-; V174 tmp154 [V174,T83] ( 2, 0 ) ref -> rdx single-def "argument with side effect"
-; V175 PSPSym [V175,T65] ( 1, 1 ) long -> [rbp-0xC8] do-not-enreg[V] "PSPSym"
-; V176 cse0 [V176,T41] ( 3, 3 ) ref -> r14 "CSE #21: conservative"
-; V177 cse1 [V177,T44] ( 3, 3 ) int -> rsi "CSE #22: conservative"
-; V178 cse2 [V178,T42] ( 3, 3 ) ref -> rdi "CSE #01: conservative"
-; V179 cse3 [V179,T43] ( 3, 3 ) ref -> rbx "CSE #06: conservative"
+; V74 tmp54 [V74,T04] ( 3, 6 ) ref -> rax class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
+;* V75 tmp55 [V75 ] ( 0, 0 ) ref -> zero-ref
+;* V76 tmp56 [V76 ] ( 0, 0 ) ref -> zero-ref single-def
+;* V77 tmp57 [V77 ] ( 0, 0 ) int -> zero-ref single-def
+;* V78 tmp58 [V78 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1[System.Net.Http.HttpResponseMessage]>
+;* V79 tmp59 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.Net.Http.HttpResponseMessage]>
+;* V80 tmp60 [V80,T57] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V81 tmp61 [V81,T27] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
+;* V82 tmp62 [V82 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V83 tmp63 [V83 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V84 tmp64 [V84 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V85 tmp65 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V86 tmp66 [V86,T05] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
+; V87 tmp67 [V87,T28] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
+;* V88 tmp68 [V88 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V89 tmp69 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V90 tmp70 [V90 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+;* V91 tmp71 [V91 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
+; V92 tmp72 [V92,T33] ( 2, 4 ) short -> rsi "Inlining Arg"
+;* V93 tmp73 [V93 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V94 tmp74 [V94,T58] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V95 tmp75 [V95,T14] ( 4, 4 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V96 tmp76 [V96,T37] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V97 tmp77 [V97 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V98 tmp78 [V98 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V99 tmp79 [V99 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V100 tmp80 [V100 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V101 tmp81 [V101 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V102 tmp82 [V102,T15] ( 4, 4 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V103 tmp83 [V103,T16] ( 4, 4 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V104 tmp84 [V104 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V105 tmp85 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V106 tmp86 [V106 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V107 tmp87 [V107 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+;* V108 tmp88 [V108 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
+; V109 tmp89 [V109,T81] ( 2, 0 ) short -> rsi "Inlining Arg"
+;* V110 tmp90 [V110 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V111 tmp91 [V111,T85] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V112 tmp92 [V112,T63] ( 4, 0 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V113 tmp93 [V113,T68] ( 3, 0 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V114 tmp94 [V114 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V115 tmp95 [V115 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V116 tmp96 [V116 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V117 tmp97 [V117 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V118 tmp98 [V118 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V119 tmp99 [V119,T64] ( 4, 0 ) ref -> r15 class-hnd single-def "Inline stloc first use temp" <System.Object>
+; V120 tmp100 [V120,T65] ( 4, 0 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V121 tmp101 [V121 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V122 tmp102 [V122,T02] ( 4, 8 ) byref -> rbx single-def "Inlining Arg"
+; V123 tmp103 [V123,T38] ( 3, 3 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
+;* V124 tmp104 [V124 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd single-def "Inlining Arg" <System.Net.Http.HttpResponseMessage>
+; V125 tmp105 [V125,T03] ( 4, 8 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]>
+;* V126 tmp106 [V126 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
+;* V127 tmp107 [V127 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Net.Http.HttpResponseMessage>
+;* V128 tmp108 [V128 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+; V129 tmp109 [V129,T06] ( 3, 6 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.__Canon]>
+; V130 tmp110 [V130,T01] ( 6, 12 ) ref -> r14 class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TplEventSource>
+;* V131 tmp111 [V131 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Threading.Tasks.TplEventSource>
+; V132 tmp112 [V132,T34] ( 2, 4 ) int -> r13 "Inlining Arg"
+;* V133 tmp113 [V133,T49] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V134 tmp114 [V134 ] ( 2, 2 ) ref -> [rbp-0x58] do-not-enreg[X] addr-exposed "field V07._obj (fldOffset=0x0)" P-DEP
+; V135 tmp115 [V135 ] ( 2, 2 ) ref -> [rbp-0x50] do-not-enreg[X] addr-exposed "field V07._result (fldOffset=0x8)" P-DEP
+; V136 tmp116 [V136 ] ( 2, 2 ) short -> [rbp-0x48] do-not-enreg[X] addr-exposed "field V07._token (fldOffset=0x10)" P-DEP
+; V137 tmp117 [V137 ] ( 1, 1 ) ubyte -> [rbp-0x46] do-not-enreg[X] addr-exposed "field V07._continueOnCapturedContext (fldOffset=0x12)" P-DEP
+; V138 tmp118 [V138 ] ( 7, 7 ) ref -> [rbp-0x68] do-not-enreg[X] addr-exposed "field V11.m_task (fldOffset=0x0)" P-DEP
+; V139 tmp119 [V139 ] ( 5, 5 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed "field V11.m_options (fldOffset=0x8)" P-DEP
+; V140 tmp120 [V140,T43] ( 4, 2 ) ref -> [rbp-0x88] do-not-enreg[] "field V14._obj (fldOffset=0x0)" P-DEP
+; V141 tmp121 [V141,T44] ( 4, 2 ) short -> [rbp-0x80] do-not-enreg[] "field V14._token (fldOffset=0x8)" P-DEP
+; V142 tmp122 [V142,T55] ( 2, 1 ) ubyte -> [rbp-0x7E] do-not-enreg[] "field V14._continueOnCapturedContext (fldOffset=0xa)" P-DEP
+; V143 tmp123 [V143,T50] ( 2, 2 ) long -> r8 "field V27._ticks (fldOffset=0x0)" P-INDEP
+; V144 tmp124 [V144,T51] ( 2, 2 ) long -> r8 "field V32._ticks (fldOffset=0x0)" P-INDEP
+; V145 tmp125 [V145,T82] ( 2, 0 ) long -> r9 "field V42._ticks (fldOffset=0x0)" P-INDEP
+; V146 tmp126 [V146,T83] ( 2, 0 ) long -> r9 "field V47._ticks (fldOffset=0x0)" P-INDEP
+; V147 tmp127 [V147,T52] ( 2, 2 ) long -> rax single-def "field V53._startTimestamp (fldOffset=0x0)" P-INDEP
+; V148 tmp128 [V148,T45] ( 2, 2 ) ref -> rsi single-def "field V55._obj (fldOffset=0x0)" P-INDEP
+; V149 tmp129 [V149,T46] ( 2, 2 ) ref -> rdi single-def "field V55._result (fldOffset=0x8)" P-INDEP
+; V150 tmp130 [V150,T53] ( 2, 2 ) short -> rax single-def "field V55._token (fldOffset=0x10)" P-INDEP
+;* V151 tmp131 [V151,T59] ( 0, 0 ) ubyte -> zero-ref single-def "field V55._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
+; V152 tmp132 [V152,T47] ( 2, 2 ) ref -> rax single-def "field V79.m_task (fldOffset=0x0)" P-INDEP
+;* V153 tmp133 [V153,T60] ( 0, 0 ) int -> zero-ref single-def "field V79.m_options (fldOffset=0x8)" P-INDEP
+; V154 tmp134 [V154,T48] ( 2, 2 ) ref -> rdi single-def "field V88._obj (fldOffset=0x0)" P-INDEP
+; V155 tmp135 [V155,T54] ( 2, 2 ) short -> rsi single-def "field V88._token (fldOffset=0x8)" P-INDEP
+;* V156 tmp136 [V156,T61] ( 0, 0 ) ubyte -> zero-ref single-def "field V88._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V157 tmp137 [V157 ] ( 0, 0 ) ref -> zero-ref "field V89._obj (fldOffset=0x0)" P-INDEP
+;* V158 tmp138 [V158 ] ( 0, 0 ) short -> zero-ref "field V89._token (fldOffset=0x8)" P-INDEP
+;* V159 tmp139 [V159 ] ( 0, 0 ) ubyte -> zero-ref "field V89._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V160 tmp140 [V160,T79] ( 2, 0 ) ref -> rdi single-def "field V105._obj (fldOffset=0x0)" P-INDEP
+; V161 tmp141 [V161,T84] ( 2, 0 ) short -> rsi single-def "field V105._token (fldOffset=0x8)" P-INDEP
+;* V162 tmp142 [V162,T86] ( 0, 0 ) ubyte -> zero-ref single-def "field V105._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V163 tmp143 [V163 ] ( 0, 0 ) ref -> zero-ref "field V106._obj (fldOffset=0x0)" P-INDEP
+;* V164 tmp144 [V164 ] ( 0, 0 ) short -> zero-ref "field V106._token (fldOffset=0x8)" P-INDEP
+;* V165 tmp145 [V165 ] ( 0, 0 ) ubyte -> zero-ref "field V106._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V166 tmp146 [V166 ] ( 0, 0 ) ref -> zero-ref "field V126._source (fldOffset=0x0)" P-INDEP
+; V167 tmp147 [V167,T29] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
+; V168 tmp148 [V168,T30] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
+; V169 tmp149 [V169,T31] ( 2, 4 ) ref -> rdx single-def "argument with side effect"
+; V170 tmp150 [V170,T80] ( 2, 0 ) ref -> rdx single-def "argument with side effect"
+; V171 PSPSym [V171,T62] ( 1, 1 ) long -> [rbp-0xC8] do-not-enreg[V] "PSPSym"
+; V172 cse0 [V172,T39] ( 3, 3 ) ref -> r14 "CSE #21: conservative"
+; V173 cse1 [V173,T42] ( 3, 3 ) int -> rsi "CSE #22: conservative"
+; V174 cse2 [V174,T40] ( 3, 3 ) ref -> rdi "CSE #01: conservative"
+; V175 cse3 [V175,T41] ( 3, 3 ) ref -> r15 "CSE #06: conservative"
;
; Lcl frame size = 168
G_M61095_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 168
vzeroupper
lea rbp, [rsp+0xD0]
xor eax, eax
mov qword ptr [rbp-0x98], rax
vxorps xmm8, xmm8, xmm8
vmovdqu ymmword ptr [rbp-0x90], ymm8
vmovdqu ymmword ptr [rbp-0x70], ymm8
vmovdqu ymmword ptr [rbp-0x50], ymm8
mov qword ptr [rbp-0x30], rax
mov qword ptr [rbp-0xC8], rsp
mov bword ptr [rbp-0xA0], rdi
mov rdx, rdi
;; size=81 bbWeight=1 PerfScore 18.58
G_M61095_IG02:
mov ebx, dword ptr [rdx+0x28]
mov r8, gword ptr [rdx+0x08]
mov gword ptr [rbp-0xA8], r8
;; size=14 bbWeight=1 PerfScore 5.00
G_M61095_IG03:
cmp ebx, 3
ja SHORT G_M61095_IG05
;; size=5 bbWeight=1 PerfScore 1.25
G_M61095_IG04:
mov edi, ebx
lea rsi, [reloc @RWD00]
mov esi, dword ptr [rsi+4*rdi]
lea rax, G_M61095_IG02
add rsi, rax
jmp rsi
;; size=24 bbWeight=0.80 PerfScore 4.80
G_M61095_IG05:
cmp gword ptr [rdx], 0
- je G_M61095_IG32
+ je G_M61095_IG17
call Interop+Sys:GetTimestamp():ulong
mov rdx, bword ptr [rbp-0xA0]
mov qword ptr [rdx+0x40], rax
xor rdi, rdi
mov gword ptr [rdx+0x10], rdi
mov r8, gword ptr [rbp-0xA8]
mov rdi, gword ptr [r8+0x20]
test rdi, rdi
je G_M61095_IG16
mov rcx, gword ptr [rdx+0x38]
mov rdx, gword ptr [rdx]
lea rsi, [rbp-0x58]
mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStartAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Object]:this
call [r11]Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStartAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Object]:this
mov rsi, gword ptr [rbp-0x58]
mov rdi, gword ptr [rbp-0x50]
movsx rax, word ptr [rbp-0x48]
mov gword ptr [rbp-0x40], rsi
mov gword ptr [rbp-0x38], rdi
mov word ptr [rbp-0x30], ax
mov byte ptr [rbp-0x2E], 0
mov r15, gword ptr [rbp-0x40]
test r15, r15
jne SHORT G_M61095_IG08
;; size=114 bbWeight=1 PerfScore 31.50
G_M61095_IG06:
mov r14, gword ptr [rbp-0x40]
test r14, r14
jne G_M61095_IG13
mov rsi, gword ptr [rbp-0x38]
;; size=17 bbWeight=1 PerfScore 3.25
G_M61095_IG07:
mov rdx, bword ptr [rbp-0xA0]
lea rdi, bword ptr [rdx+0x18]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp G_M61095_IG17
+ jmp G_M61095_IG28
;; size=21 bbWeight=1 PerfScore 4.50
G_M61095_IG08:
mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Object]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
je SHORT G_M61095_IG09
test dword ptr [rax+0x34], 0xD1FFAB1E
jne SHORT G_M61095_IG06
jmp SHORT G_M61095_IG10
;; size=41 bbWeight=1 PerfScore 11.00
G_M61095_IG09:
mov rdi, r15
movsx rsi, word ptr [rbp-0x30]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
test eax, eax
jne SHORT G_M61095_IG06
;; size=25 bbWeight=1 PerfScore 7.75
G_M61095_IG10:
xor edi, edi
mov rdx, bword ptr [rbp-0xA0]
mov dword ptr [rdx+0x28], edi
lea rdi, bword ptr [rdx+0x48]
lea rsi, bword ptr [rbp-0x40]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
add rdx, 48
mov rsi, bword ptr [rbp-0xA0]
mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rdx, rax
lea rsi, [rbp-0x40]
mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Object]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M61095_IG50
+ jmp G_M61095_IG49
;; size=99 bbWeight=1 PerfScore 17.25
G_M61095_IG11:
vmovdqu xmm0, xmmword ptr [rdx+0x48]
vmovdqu xmmword ptr [rbp-0x40], xmm0
mov rdi, qword ptr [rdx+0x58]
mov qword ptr [rbp-0x30], rdi
;; size=18 bbWeight=1 PerfScore 8.00
G_M61095_IG12:
xor edi, edi
mov qword ptr [rdx+0x48], rdi
mov qword ptr [rdx+0x50], rdi
mov qword ptr [rdx+0x58], rdi
mov ebx, -1
mov dword ptr [rdx+0x28], -1
jmp G_M61095_IG06
;; size=31 bbWeight=1 PerfScore 6.50
G_M61095_IG13:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Object]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
mov r15, rax
test r15, r15
je SHORT G_M61095_IG15
mov edi, dword ptr [r15+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M61095_IG14
mov rdi, r15
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
;; size=68 bbWeight=1 PerfScore 12.50
G_M61095_IG14:
mov rsi, gword ptr [r15+0x38]
jmp G_M61095_IG07
;; size=9 bbWeight=1 PerfScore 4.00
G_M61095_IG15:
mov rdi, r14
movsx rsi, word ptr [rbp-0x30]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
mov rsi, rax
jmp G_M61095_IG07
;; size=29 bbWeight=1 PerfScore 8.75
G_M61095_IG16:
mov r8, gword ptr [rbp-0xA8]
mov rdi, gword ptr [r8+0x18]
mov rsi, gword ptr [rdx]
mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStart(System.Net.Http.HttpRequestMessage):System.Object:this
call [r11]Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStart(System.Net.Http.HttpRequestMessage):System.Object:this
mov rsi, rax
jmp G_M61095_IG07
;; size=35 bbWeight=1 PerfScore 10.50
G_M61095_IG17:
- cmp ebx, 1
- je G_M61095_IG19
- cmp ebx, 2
- je G_M61095_IG25
- mov rdx, bword ptr [rbp-0xA0]
- mov rbx, gword ptr [rdx]
- mov r15, gword ptr [rdx+0x38]
- test rbx, rbx
- je G_M61095_IG31
- mov rdi, gword ptr [rbp-0xA8]
- mov rax, 0xD1FFAB1E ; code for System.Net.Http.DelegatingHandler:SetOperationStarted():this
- call [rax]System.Net.Http.DelegatingHandler:SetOperationStarted():this
- mov rdi, gword ptr [rbp-0xA8]
- mov rax, gword ptr [rdi+0x08]
- mov rdi, rax
- mov rsi, rbx
- mov rdx, r15
- mov rax, qword ptr [rax]
- mov rax, qword ptr [rax+0x40]
- call [rax+0x28]System.Net.Http.HttpMessageHandler:SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]:this
- cmp byte ptr [rax], al
- mov gword ptr [rbp-0x68], rax
- xor edi, edi
- mov dword ptr [rbp-0x60], edi
- test byte ptr [rbp-0x60], 4
- jne SHORT G_M61095_IG18
- mov rdi, gword ptr [rbp-0x68]
- test dword ptr [rdi+0x34], 0xD1FFAB1E
- jne G_M61095_IG21
- ;; size=124 bbWeight=1 PerfScore 37.00
-G_M61095_IG18:
- mov rsi, bword ptr [rbp-0xA0]
- mov dword ptr [rsi+0x28], 1
- lea rdi, bword ptr [rsi+0x60]
- mov rsi, gword ptr [rbp-0x68]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov edx, dword ptr [rbp-0x60]
- mov r15, bword ptr [rbp-0xA0]
- mov dword ptr [r15+0x68], edx
- lea rdx, bword ptr [r15+0x30]
- mov rsi, r15
- mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- mov rdx, rax
- lea rsi, [rbp-0x68]
- mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.Net.Http.HttpResponseMessage]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M61095_IG50
- ;; size=104 bbWeight=1 PerfScore 18.00
-G_M61095_IG19:
- mov rdx, bword ptr [rbp-0xA0]
- vmovdqu xmm0, xmmword ptr [rdx+0x60]
- vmovdqu xmmword ptr [rbp-0x68], xmm0
- ;; size=17 bbWeight=1 PerfScore 6.00
-G_M61095_IG20:
- xor edi, edi
- mov qword ptr [rdx+0x60], rdi
- mov qword ptr [rdx+0x68], rdi
- mov dword ptr [rdx+0x28], -1
- ;; size=17 bbWeight=1 PerfScore 3.25
-G_M61095_IG21:
- mov rdi, gword ptr [rbp-0x68]
- mov esi, dword ptr [rdi+0x34]
- and esi, 0xD1FFAB1E
- cmp esi, 0xD1FFAB1E
- je SHORT G_M61095_IG22
- xor esi, esi
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
- call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
- ;; size=35 bbWeight=1 PerfScore 8.00
-G_M61095_IG22:
- mov rdi, gword ptr [rbp-0x68]
- mov rsi, gword ptr [rdi+0x38]
- mov rdx, bword ptr [rbp-0xA0]
- lea rdi, bword ptr [rdx+0x10]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rdi, gword ptr [rbp-0xA8]
- mov rbx, gword ptr [rdi+0x20]
- test rbx, rbx
- je G_M61095_IG29
- mov rdx, bword ptr [rbp-0xA0]
- mov r15, gword ptr [rdx+0x18]
- mov r14, gword ptr [rdx]
- mov r13, gword ptr [rdx+0x10]
- lea rdi, bword ptr [rdx+0x40]
- mov rax, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
- call [rax]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
- mov r8, rax
- mov rdx, bword ptr [rbp-0xA0]
- mov r9, gword ptr [rdx+0x38]
- mov rdi, rbx
- mov rsi, r15
- mov rdx, r14
- mov rcx, r13
- mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStopAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
- call [r11]Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStopAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x88], rax
- mov qword ptr [rbp-0x80], rdx
- movsx rsi, word ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0x88]
- mov gword ptr [rbp-0x78], rdi
- mov word ptr [rbp-0x70], si
- mov byte ptr [rbp-0x6E], 0
- mov rbx, gword ptr [rbp-0x78]
- test rbx, rbx
- je G_M61095_IG27
- mov rsi, rbx
- mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
- mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
- call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
- test rax, rax
- je SHORT G_M61095_IG23
- test dword ptr [rax+0x34], 0xD1FFAB1E
- jne G_M61095_IG27
- jmp SHORT G_M61095_IG24
- ;; size=210 bbWeight=1 PerfScore 50.25
-G_M61095_IG23:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x70]
- mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
- call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
- test eax, eax
- jne G_M61095_IG27
- ;; size=29 bbWeight=1 PerfScore 7.75
-G_M61095_IG24:
- mov rdx, bword ptr [rbp-0xA0]
- mov dword ptr [rdx+0x28], 2
- lea rdi, bword ptr [rdx+0x70]
- lea rsi, bword ptr [rbp-0x78]
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- add rdx, 48
- mov rsi, bword ptr [rbp-0xA0]
- mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
- mov rdx, rax
- lea rsi, [rbp-0x78]
- mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M61095_IG50
- ;; size=96 bbWeight=1 PerfScore 16.00
-G_M61095_IG25:
- mov rsi, bword ptr [rbp-0xA0]
- vmovdqu xmm0, xmmword ptr [rsi+0x70]
- vmovdqu xmmword ptr [rbp-0x78], xmm0
- ;; size=17 bbWeight=1 PerfScore 6.00
-G_M61095_IG26:
- xor edi, edi
- mov qword ptr [rsi+0x70], rdi
- mov qword ptr [rsi+0x78], rdi
- mov dword ptr [rsi+0x28], -1
- ;; size=17 bbWeight=1 PerfScore 3.25
-G_M61095_IG27:
- mov rbx, gword ptr [rbp-0x78]
- test rbx, rbx
- je G_M61095_IG30
- mov rsi, rbx
- mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
- mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
- call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
- test rax, rax
- je SHORT G_M61095_IG28
- mov edi, dword ptr [rax+0x34]
- and edi, 0xD1FFAB1E
- cmp edi, 0xD1FFAB1E
- je SHORT G_M61095_IG30
- mov rdi, rax
- xor esi, esi
- mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
- call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
- jmp SHORT G_M61095_IG30
- ;; size=79 bbWeight=1 PerfScore 16.50
-G_M61095_IG28:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x70]
- mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
- call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
- jmp SHORT G_M61095_IG30
- ;; size=23 bbWeight=1 PerfScore 8.50
-G_M61095_IG29:
- mov rdi, gword ptr [rbp-0xA8]
- mov rbx, gword ptr [rdi+0x18]
- mov rsi, bword ptr [rbp-0xA0]
- mov r15, gword ptr [rsi+0x18]
- mov r14, gword ptr [rsi]
- mov r13, gword ptr [rsi+0x10]
- lea rdi, bword ptr [rsi+0x40]
- mov rax, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
- call [rax]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
- mov r8, rax
- mov rdi, rbx
- mov rsi, r15
- mov rdx, r14
- mov rcx, r13
- mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStop(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan):this
- call [r11]Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStop(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan):this
- ;; size=73 bbWeight=1 PerfScore 18.25
-G_M61095_IG30:
- mov rsi, bword ptr [rbp-0xA0]
- mov rbx, gword ptr [rsi+0x10]
- jmp G_M61095_IG43
- ;; size=16 bbWeight=1 PerfScore 5.00
-G_M61095_IG31:
- mov edi, 0x2F87
- 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_M61095_IG32:
mov edi, 0xD0E
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:Throw(System.String)
call [rax]System.ThrowHelper:Throw(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M61095_IG33:
- mov r15, bword ptr [rbp-0xA0]
- mov rsi, gword ptr [r15+0x20]
+G_M61095_IG18:
+ mov rbx, bword ptr [rbp-0xA0]
+ mov rsi, gword ptr [rbx+0x20]
mov rdi, 0xD1FFAB1E ; System.Exception
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
- mov rbx, rax
+ mov r15, rax
mov r8, gword ptr [rbp-0xA8]
cmp gword ptr [r8+0x20], 0
- je G_M61095_IG40
+ je G_M61095_IG25
mov r14, gword ptr [r8+0x20]
- mov r13, gword ptr [r15+0x18]
- mov r12, gword ptr [r15]
- mov rax, gword ptr [r15+0x10]
+ mov r13, gword ptr [rbx+0x18]
+ mov r12, gword ptr [rbx]
+ mov rax, gword ptr [rbx+0x10]
mov gword ptr [rbp-0xB8], rax
- lea rdi, bword ptr [r15+0x40]
+ lea rdi, bword ptr [rbx+0x40]
mov rcx, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
call [rcx]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
mov r9, rax
- mov rdi, gword ptr [r15+0x38]
+ mov rdi, gword ptr [rbx+0x38]
mov gword ptr [rsp], rdi
mov rdi, r14
mov rsi, r13
mov rdx, r12
mov rcx, gword ptr [rbp-0xB8]
- mov r8, rbx
+ mov r8, r15
mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestFailedAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.Exception,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
call [r11]Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestFailedAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.Exception,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
mov gword ptr [rbp-0x88], rax
mov qword ptr [rbp-0x80], rdx
movsx rsi, word ptr [rbp-0x80]
mov rdi, gword ptr [rbp-0x88]
mov gword ptr [rbp-0x98], rdi
mov word ptr [rbp-0x90], si
mov byte ptr [rbp-0x8E], 0
- mov rbx, gword ptr [rbp-0x98]
- test rbx, rbx
- je G_M61095_IG38
- mov rsi, rbx
+ mov r15, gword ptr [rbp-0x98]
+ test r15, r15
+ je G_M61095_IG23
+ mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M61095_IG34
+ je SHORT G_M61095_IG19
test dword ptr [rax+0x34], 0xD1FFAB1E
- jne G_M61095_IG38
- jmp SHORT G_M61095_IG35
+ jne G_M61095_IG23
+ jmp SHORT G_M61095_IG20
;; size=240 bbWeight=0 PerfScore 0.00
-G_M61095_IG34:
- mov rdi, rbx
+G_M61095_IG19:
+ mov rdi, r15
movsx rsi, word ptr [rbp-0x90]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
test eax, eax
- jne G_M61095_IG38
+ jne G_M61095_IG23
;; size=32 bbWeight=0 PerfScore 0.00
-G_M61095_IG35:
- mov r15, bword ptr [rbp-0xA0]
- mov dword ptr [r15+0x28], 3
- lea rdi, bword ptr [r15+0x70]
+G_M61095_IG20:
+ mov rbx, bword ptr [rbp-0xA0]
+ mov dword ptr [rbx+0x28], 3
+ lea rdi, bword ptr [rbx+0x70]
lea rsi, bword ptr [rbp-0x98]
call CORINFO_HELP_ASSIGN_BYREF
movsq
- lea rdx, bword ptr [r15+0x30]
- mov rsi, r15
+ lea rdx, bword ptr [rbx+0x30]
+ mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rdx, rax
lea rsi, [rbp-0x98]
mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M61095_IG50
- ;; size=99 bbWeight=0 PerfScore 0.00
-G_M61095_IG36:
+ jmp G_M61095_IG49
+ ;; size=98 bbWeight=0 PerfScore 0.00
+G_M61095_IG21:
vmovdqu xmm0, xmmword ptr [rdx+0x70]
vmovdqu xmmword ptr [rbp-0x98], xmm0
;; size=13 bbWeight=0 PerfScore 0.00
-G_M61095_IG37:
+G_M61095_IG22:
xor esi, esi
mov qword ptr [rdx+0x70], rsi
mov qword ptr [rdx+0x78], rsi
mov dword ptr [rdx+0x28], -1
;; size=17 bbWeight=0 PerfScore 0.00
-G_M61095_IG38:
- mov rbx, gword ptr [rbp-0x98]
- test rbx, rbx
- je G_M61095_IG41
- mov rsi, rbx
+G_M61095_IG23:
+ mov r15, gword ptr [rbp-0x98]
+ test r15, r15
+ je G_M61095_IG26
+ mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M61095_IG39
+ je SHORT G_M61095_IG24
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
- je SHORT G_M61095_IG41
+ je SHORT G_M61095_IG26
mov rdi, rax
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
- jmp SHORT G_M61095_IG41
+ jmp SHORT G_M61095_IG26
;; size=82 bbWeight=0 PerfScore 0.00
-G_M61095_IG39:
- mov rdi, rbx
+G_M61095_IG24:
+ mov rdi, r15
movsx rsi, word ptr [rbp-0x90]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
- jmp SHORT G_M61095_IG41
+ jmp SHORT G_M61095_IG26
;; size=26 bbWeight=0 PerfScore 0.00
-G_M61095_IG40:
+G_M61095_IG25:
mov r14, gword ptr [r8+0x18]
- mov r13, gword ptr [r15+0x18]
- mov r12, gword ptr [r15]
- mov rax, gword ptr [r15+0x10]
+ mov r13, gword ptr [rbx+0x18]
+ mov r12, gword ptr [rbx]
+ mov rax, gword ptr [rbx+0x10]
mov gword ptr [rbp-0xB0], rax
- lea rdi, bword ptr [r15+0x40]
+ lea rdi, bword ptr [rbx+0x40]
mov rcx, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
call [rcx]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
mov r9, rax
mov rdi, r14
mov rsi, r13
mov rdx, r12
mov rcx, gword ptr [rbp-0xB0]
- mov r8, rbx
+ mov r8, r15
mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestFailed(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.Exception,System.TimeSpan):this
call [r11]Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestFailed(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.Exception,System.TimeSpan):this
;; size=73 bbWeight=0 PerfScore 0.00
-G_M61095_IG41:
+G_M61095_IG26:
mov rdx, bword ptr [rbp-0xA0]
mov rsi, gword ptr [rdx+0x20]
mov rdi, 0xD1FFAB1E ; System.Exception
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- jne SHORT G_M61095_IG42
- mov r15, bword ptr [rbp-0xA0]
- mov rdi, gword ptr [r15+0x20]
+ jne SHORT G_M61095_IG27
+ mov rbx, bword ptr [rbp-0xA0]
+ mov rdi, gword ptr [rbx+0x20]
call CORINFO_HELP_THROW
int3
;; size=55 bbWeight=0 PerfScore 0.00
-G_M61095_IG42:
+G_M61095_IG27:
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
call [rax]System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
cmp dword ptr [rdi], edi
call [rax]System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
int3
;; size=33 bbWeight=0 PerfScore 0.00
-G_M61095_IG43:
- mov dword ptr [rsi+0x28], -2
+G_M61095_IG28:
+ cmp ebx, 1
+ je G_M61095_IG30
+ cmp ebx, 2
+ je G_M61095_IG36
+ mov rdx, bword ptr [rbp-0xA0]
+ mov rdx, gword ptr [rdx+0x38]
+ mov rbx, bword ptr [rbp-0xA0]
+ mov rsi, gword ptr [rbx]
+ mov rdi, gword ptr [rbp-0xA8]
+ mov rax, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler:<>n__0(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]:this
+ call [rax]Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler:<>n__0(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]:this
+ cmp byte ptr [rax], al
+ mov gword ptr [rbp-0x68], rax
+ xor edi, edi
+ mov dword ptr [rbp-0x60], edi
+ test byte ptr [rbp-0x60], 4
+ jne SHORT G_M61095_IG29
+ mov rdi, gword ptr [rbp-0x68]
+ test dword ptr [rdi+0x34], 0xD1FFAB1E
+ jne SHORT G_M61095_IG32
+ ;; size=88 bbWeight=1 PerfScore 26.00
+G_M61095_IG29:
+ mov dword ptr [rbx+0x28], 1
+ lea rdi, bword ptr [rbx+0x60]
+ mov rsi, gword ptr [rbp-0x68]
+ call CORINFO_HELP_CHECKED_ASSIGN_REF
+ mov edx, dword ptr [rbp-0x60]
+ mov dword ptr [rbx+0x68], edx
+ lea rdx, bword ptr [rbx+0x30]
+ mov rsi, rbx
+ mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ mov rdx, rax
+ lea rsi, [rbp-0x68]
+ mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.Net.Http.HttpResponseMessage]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ jmp G_M61095_IG49
+ ;; size=89 bbWeight=1 PerfScore 16.00
+G_M61095_IG30:
+ mov rbx, bword ptr [rbp-0xA0]
+ vmovdqu xmm0, xmmword ptr [rbx+0x60]
+ vmovdqu xmmword ptr [rbp-0x68], xmm0
+ ;; size=17 bbWeight=1 PerfScore 6.00
+G_M61095_IG31:
+ xor edi, edi
+ mov qword ptr [rbx+0x60], rdi
+ mov qword ptr [rbx+0x68], rdi
+ mov dword ptr [rbx+0x28], -1
+ ;; size=17 bbWeight=1 PerfScore 3.25
+G_M61095_IG32:
+ mov rdi, gword ptr [rbp-0x68]
+ mov esi, dword ptr [rdi+0x34]
+ and esi, 0xD1FFAB1E
+ cmp esi, 0xD1FFAB1E
+ je SHORT G_M61095_IG33
+ xor esi, esi
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
+ call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
+ ;; size=35 bbWeight=1 PerfScore 8.00
+G_M61095_IG33:
+ mov rdi, gword ptr [rbp-0x68]
+ mov rsi, gword ptr [rdi+0x38]
+ lea rdi, bword ptr [rbx+0x10]
+ call CORINFO_HELP_CHECKED_ASSIGN_REF
+ mov rdi, gword ptr [rbp-0xA8]
+ mov r15, gword ptr [rdi+0x20]
+ test r15, r15
+ je G_M61095_IG40
+ mov r14, gword ptr [rbx+0x18]
+ mov r13, gword ptr [rbx]
+ mov r12, gword ptr [rbx+0x10]
+ lea rdi, bword ptr [rbx+0x40]
+ mov rax, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
+ call [rax]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
+ mov r8, rax
+ mov r9, gword ptr [rbx+0x38]
+ mov rdi, r15
+ mov rsi, r14
+ mov rdx, r13
+ mov rcx, r12
+ mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStopAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
+ call [r11]Microsoft.Extensions.Http.Logging.IHttpClientAsyncLogger:LogRequestStopAsync(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this
+ mov gword ptr [rbp-0x88], rax
+ mov qword ptr [rbp-0x80], rdx
+ movsx rsi, word ptr [rbp-0x80]
+ mov rdi, gword ptr [rbp-0x88]
+ mov gword ptr [rbp-0x78], rdi
+ mov word ptr [rbp-0x70], si
+ mov byte ptr [rbp-0x6E], 0
+ mov r15, gword ptr [rbp-0x78]
+ test r15, r15
+ je G_M61095_IG38
+ mov rsi, r15
+ mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
+ mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
+ call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
+ test rax, rax
+ je SHORT G_M61095_IG34
+ test dword ptr [rax+0x34], 0xD1FFAB1E
+ jne G_M61095_IG38
+ jmp SHORT G_M61095_IG35
+ ;; size=189 bbWeight=1 PerfScore 47.25
+G_M61095_IG34:
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x70]
+ mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
+ call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetStatus(short):int:this
+ test eax, eax
+ jne SHORT G_M61095_IG38
+ ;; size=25 bbWeight=1 PerfScore 7.75
+G_M61095_IG35:
+ mov dword ptr [rbx+0x28], 2
+ lea rdi, bword ptr [rbx+0x70]
+ lea rsi, bword ptr [rbp-0x78]
+ call CORINFO_HELP_ASSIGN_BYREF
+ movsq
+ lea rdx, bword ptr [rbx+0x30]
+ mov rsi, rbx
+ mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:GetStateMachineBox[Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
+ mov rdx, rax
+ lea rsi, [rbp-0x78]
+ mov rdi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
+ jmp G_M61095_IG49
+ ;; size=85 bbWeight=1 PerfScore 14.50
+G_M61095_IG36:
+ mov rbx, bword ptr [rbp-0xA0]
+ vmovdqu xmm0, xmmword ptr [rbx+0x70]
+ vmovdqu xmmword ptr [rbp-0x78], xmm0
+ ;; size=17 bbWeight=1 PerfScore 6.00
+G_M61095_IG37:
+ xor esi, esi
+ mov qword ptr [rbx+0x70], rsi
+ mov qword ptr [rbx+0x78], rsi
+ mov dword ptr [rbx+0x28], -1
+ ;; size=17 bbWeight=1 PerfScore 3.25
+G_M61095_IG38:
+ mov r15, gword ptr [rbp-0x78]
+ test r15, r15
+ je G_M61095_IG41
+ mov rsi, r15
+ mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task
+ mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
+ call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
+ test rax, rax
+ je SHORT G_M61095_IG39
+ mov edi, dword ptr [rax+0x34]
+ and edi, 0xD1FFAB1E
+ cmp edi, 0xD1FFAB1E
+ je SHORT G_M61095_IG41
+ mov rdi, rax
+ xor esi, esi
+ mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
+ call [rax]System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
+ jmp SHORT G_M61095_IG41
+ ;; size=79 bbWeight=1 PerfScore 16.50
+G_M61095_IG39:
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x70]
+ mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
+ call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
+ jmp SHORT G_M61095_IG41
+ ;; size=23 bbWeight=1 PerfScore 8.50
+G_M61095_IG40:
+ mov rdi, gword ptr [rbp-0xA8]
+ mov r15, gword ptr [rdi+0x18]
+ mov r14, gword ptr [rbx+0x18]
+ mov r13, gword ptr [rbx]
+ mov r12, gword ptr [rbx+0x10]
+ lea rdi, bword ptr [rbx+0x40]
+ mov rax, 0xD1FFAB1E ; code for Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
+ call [rax]Microsoft.Extensions.Internal.ValueStopwatch:GetElapsedTime():System.TimeSpan:this
+ mov r8, rax
+ mov rdi, r15
+ mov rsi, r14
+ mov rdx, r13
+ mov rcx, r12
+ mov r11, 0xD1FFAB1E ; code for Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStop(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan):this
+ call [r11]Microsoft.Extensions.Http.Logging.IHttpClientLogger:LogRequestStop(System.Object,System.Net.Http.HttpRequestMessage,System.Net.Http.HttpResponseMessage,System.TimeSpan):this
+ ;; size=66 bbWeight=1 PerfScore 17.25
+G_M61095_IG41:
+ mov r15, gword ptr [rbx+0x10]
+ ;; size=4 bbWeight=1 PerfScore 2.00
+G_M61095_IG42:
+ mov dword ptr [rbx+0x28], -2
xor rdi, rdi
- mov gword ptr [rsi+0x10], rdi
+ mov gword ptr [rbx+0x10], rdi
;; size=13 bbWeight=1 PerfScore 2.25
-G_M61095_IG44:
- mov gword ptr [rsi+0x18], rdi
- lea r15, bword ptr [rsi+0x30]
- cmp gword ptr [r15], 0
- jne SHORT G_M61095_IG47
- test rbx, rbx
- jne SHORT G_M61095_IG45
+G_M61095_IG43:
+ mov gword ptr [rbx+0x18], rdi
+ add rbx, 48
+ cmp gword ptr [rbx], 0
+ jne SHORT G_M61095_IG46
+ test r15, r15
+ jne SHORT G_M61095_IG44
mov rdi, 0xD1FFAB1E
mov esi, 57
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]:s_defaultResultTask
mov rsi, gword ptr [rdi]
- jmp SHORT G_M61095_IG46
- ;; size=54 bbWeight=1 PerfScore 12.50
-G_M61095_IG45:
+ jmp SHORT G_M61095_IG45
+ ;; size=54 bbWeight=1 PerfScore 12.25
+G_M61095_IG44:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Net.Http.HttpResponseMessage]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov dword ptr [r14+0x34], 0xD1FFAB1E
lea rdi, bword ptr [r14+0x38]
- mov rsi, rbx
+ mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
mov rsi, r14
;; size=41 bbWeight=1 PerfScore 4.50
-G_M61095_IG46:
- mov rdi, r15
+G_M61095_IG45:
+ mov rdi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp G_M61095_IG50
+ jmp G_M61095_IG49
;; size=13 bbWeight=1 PerfScore 3.25
-G_M61095_IG47:
- mov r15, gword ptr [r15]
+G_M61095_IG46:
+ mov rbx, gword ptr [rbx]
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M61095_IG51
+ je G_M61095_IG50
;; size=22 bbWeight=1 PerfScore 6.25
-G_M61095_IG48:
+G_M61095_IG47:
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.TplEventSource:Log
mov r14, gword ptr [rdi]
cmp byte ptr [r14+0x9D], 0
- je SHORT G_M61095_IG49
- mov rdi, r15
+ je SHORT G_M61095_IG48
+ mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:get_Id():int:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.Tasks.Task:get_Id():int:this
mov r13d, eax
movzx rsi, byte ptr [r14+0x9D]
test esi, esi
- je SHORT G_M61095_IG49
+ je SHORT G_M61095_IG48
xor ecx, ecx
mov dword ptr [rsp], ecx
mov rcx, qword ptr [r14+0x80]
mov edx, dword ptr [r14+0x98]
mov rdi, r14
mov r8d, 4
mov r9d, 8
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this
call [rax]System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this
test eax, eax
- je SHORT G_M61095_IG49
+ je SHORT G_M61095_IG48
mov rdi, r14
mov edx, r13d
mov esi, 15
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,int,int):this
call [rax]System.Diagnostics.Tracing.EventSource:WriteEvent(int,int,int):this
;; size=133 bbWeight=1 PerfScore 31.00
-G_M61095_IG49:
- mov rdi, r15
- mov rsi, rbx
+G_M61095_IG48:
+ mov rdi, rbx
+ mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task`1[System.__Canon]:TrySetResult(System.__Canon):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.Tasks.Task`1[System.__Canon]:TrySetResult(System.__Canon):ubyte:this
test eax, eax
- je SHORT G_M61095_IG52
+ je SHORT G_M61095_IG51
;; size=24 bbWeight=1 PerfScore 8.00
-G_M61095_IG50:
+G_M61095_IG49:
add rsp, 168
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M61095_IG51:
+G_M61095_IG50:
mov rdi, 0xD1FFAB1E
mov esi, 0x43B
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
- jmp G_M61095_IG48
+ jmp G_M61095_IG47
;; size=25 bbWeight=0 PerfScore 0.00
-G_M61095_IG52:
+G_M61095_IG51:
mov edi, 24
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException(int)
call [rax]System.ThrowHelper:ThrowInvalidOperationException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
-G_M61095_IG53:
+G_M61095_IG52:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 24
vzeroupper
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
lea rbp, [rbp+0xD0]
;; size=33 bbWeight=0 PerfScore 0.00
-G_M61095_IG54:
- mov r15, bword ptr [rbp-0xA0]
- lea rdi, bword ptr [r15+0x20]
+G_M61095_IG53:
+ mov rbx, bword ptr [rbp-0xA0]
+ lea rdi, bword ptr [rbx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- lea rax, G_M61095_IG33
+ lea rax, G_M61095_IG18
;; size=23 bbWeight=0 PerfScore 0.00
-G_M61095_IG55:
+G_M61095_IG54:
add rsp, 24
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0 PerfScore 0.00
-G_M61095_IG56:
+G_M61095_IG55:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 24
vzeroupper
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
lea rbp, [rbp+0xD0]
;; size=33 bbWeight=0 PerfScore 0.00
-G_M61095_IG57:
+G_M61095_IG56:
mov rdx, rsi
- mov r15, bword ptr [rbp-0xA0]
- mov dword ptr [r15+0x28], -2
+ mov rbx, bword ptr [rbp-0xA0]
+ mov dword ptr [rbx+0x28], -2
xor rdi, rdi
- mov gword ptr [r15+0x10], rdi
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M61095_IG58:
- mov gword ptr [r15+0x18], rdi
- lea rdi, bword ptr [r15+0x30]
+ mov gword ptr [rbx+0x10], rdi
+ ;; size=23 bbWeight=0 PerfScore 0.00
+G_M61095_IG57:
+ mov gword ptr [rbx+0x18], rdi
+ lea rdi, bword ptr [rbx+0x30]
mov rsi, 0xD1FFAB1E ; System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Net.Http.HttpResponseMessage]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.__Canon]:SetException(System.Exception):this
- lea rax, G_M61095_IG50
+ lea rax, G_M61095_IG49
;; size=37 bbWeight=0 PerfScore 0.00
-G_M61095_IG59:
+G_M61095_IG58:
add rsp, 24
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0 PerfScore 0.00
RWD00 dd G_M61095_IG11 - G_M61095_IG02
- dd G_M61095_IG17 - G_M61095_IG02
- dd G_M61095_IG17 - G_M61095_IG02
- dd G_M61095_IG36 - G_M61095_IG02
+ dd G_M61095_IG28 - G_M61095_IG02
+ dd G_M61095_IG28 - G_M61095_IG02
+ dd G_M61095_IG21 - G_M61095_IG02
-; Total bytes of code 2771, prolog size 81, PerfScore 430.88, instruction count 600, allocated bytes for code 2771 (MethodHash=b4ae1158) for method Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3:MoveNext():this (FullOpts)
+; Total bytes of code 2627, prolog size 81, PerfScore 409.13, instruction count 575, allocated bytes for code 2627 (MethodHash=b4ae1158) for method Microsoft.Extensions.Http.Logging.HttpClientLoggerHandler+<SendAsync>d__3:MoveNext():this (FullOpts)
-138 (-1.64 % of base) - System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
; Assembly listing for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):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; 173 single block inlinees; 71 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T36] ( 17, 15.50) ref -> r13 this class-hnd single-def <System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]>
; V01 arg1 [V01,T00] ( 72,238.50) byref -> rbx single-def
-; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x860] class-hnd single-def <System.Type>
+; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x870] class-hnd single-def <System.Type>
; V03 arg3 [V03,T18] ( 14, 24.50) ref -> r14 class-hnd single-def <System.Text.Json.JsonSerializerOptions>
; V04 arg4 [V04,T01] ( 81, 86 ) byref -> r15 single-def
-; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x868] single-def
-; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x870] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x878] single-def
+; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x880] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V07 loc1 [V07,T39] ( 15, 16.25) ref -> r13 class-hnd <System.Object>
-; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x878] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
+; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x888] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
;* V09 loc3 [V09 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
;* V10 loc4 [V10 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V11 loc5 [V11,T67] ( 9, 10.75) ref -> r13 class-hnd single-def <System.Object>
; V12 loc6 [V12 ] ( 17, 78 ) struct (192) [rbp-0xE8] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.Json.Utf8JsonReader>
-; V13 loc7 [V13,T54] ( 4, 12.50) ref -> [rbp-0x880] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V13 loc7 [V13,T55] ( 4, 12.50) ref -> [rbp-0x890] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V14 loc8 [V14,T229] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V15 loc9 [V15,T238] ( 0, 0 ) int -> zero-ref
-; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x888] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V17 loc11 [V17,T31] ( 9, 18 ) long -> [rbp-0xF0] spill-single-def
-; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x890] class-hnd spill-single-def <ubyte[]>
-; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.String>
+; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <ubyte[]>
+; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.String>
; V20 loc14 [V20,T75] ( 3, 10 ) ubyte -> [rbp-0xF4] spill-single-def
-; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
+; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
; V22 loc16 [V22,T222] ( 3, 1.50) ubyte -> r13
; V23 loc17 [V23 ] ( 4, 1.75) ref -> [rbp-0x100] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object>
; V24 loc18 [V24,T230] ( 2, 1 ) ref -> rsi class-hnd single-def <System.Object>
; V25 loc19 [V25,T231] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String][]>
;* V26 loc20 [V26,T239] ( 0, 0 ) int -> zero-ref
-; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Object>
-; V29 loc23 [V29,T56] ( 4, 12 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.String>
+; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Object>
+; V29 loc23 [V29,T57] ( 4, 12 ) ref -> [rbp-0x8C8] class-hnd spill-single-def <System.String>
;* V30 loc24 [V30 ] ( 0, 0 ) int -> zero-ref ld-addr-op
; V31 loc25 [V31,T115] ( 3, 6 ) ref -> r12 class-hnd <System.Object>
-; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
+; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8D0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
; V33 OutArgs [V33 ] ( 1, 1 ) struct (80) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V34 tmp1 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V35 tmp2 [V35 ] ( 0, 0 ) ref -> zero-ref single-def
; V36 tmp3 [V36,T223] ( 2, 1 ) int -> rax
; V37 tmp4 [V37,T186] ( 4, 3.50) ref -> r13 single-def "inline UNBOX clone1"
; V38 tmp5 [V38,T191] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" <System.Int32>
; V39 tmp6 [V39,T160] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V40 tmp7 [V40 ] ( 0, 0 ) ref -> zero-ref single-def
; V41 tmp8 [V41,T161] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V42 tmp9 [V42 ] ( 0, 0 ) ref -> zero-ref single-def
; V43 tmp10 [V43,T162] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V44 tmp11 [V44 ] ( 0, 0 ) ref -> zero-ref single-def
;* V45 tmp12 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V46 tmp13 [V46 ] ( 0, 0 ) ref -> zero-ref single-def
; V47 tmp14 [V47,T224] ( 2, 1 ) int -> rax
; V48 tmp15 [V48,T187] ( 4, 3.50) ref -> rbx single-def "inline UNBOX clone1"
; V49 tmp16 [V49,T192] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Single-def Box Helper" <System.Int32>
; V50 tmp17 [V50,T163] ( 4, 4 ) ref -> rax class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V51 tmp18 [V51 ] ( 0, 0 ) ref -> zero-ref single-def
; V52 tmp19 [V52 ] ( 3, 12 ) struct (192) [rbp-0x1C0] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V53 tmp20 [V53 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
; V54 tmp21 [V54,T93] ( 3, 8 ) struct (192) [rbp-0x280] do-not-enreg[S] must-init <System.Text.Json.Utf8JsonReader>
;* V55 tmp22 [V55 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
; V56 tmp23 [V56 ] ( 3, 12 ) struct (192) [rbp-0x340] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V57 tmp24 [V57 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Buffers.ReadOnlySequence`1[ubyte]>
; V58 tmp25 [V58,T206] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V59 tmp26 [V59,T164] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V60 tmp27 [V60 ] ( 0, 0 ) ref -> zero-ref single-def
;* V61 tmp28 [V61 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V62 tmp29 [V62,T165] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V63 tmp30 [V63 ] ( 0, 0 ) ref -> zero-ref single-def
;* V64 tmp31 [V64 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V65 tmp32 [V65 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V66 tmp33 [V66 ] ( 2, 8 ) ubyte -> [rbp-0x348] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V67 tmp34 [V67,T50] ( 5, 14 ) ref -> [rbp-0x8C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8D0] spill-single-def "Inlining Arg"
-; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8D8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V67 tmp34 [V67,T51] ( 5, 14 ) ref -> [rbp-0x8D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8E0] spill-single-def "Inlining Arg"
+; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8E8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V70 tmp37 [V70 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V71 tmp38 [V71 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V72 tmp39 [V72 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V73 tmp40 [V73 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V74 tmp41 [V74 ] ( 2, 4 ) struct (24) [rbp-0x360] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V75 tmp42 [V75 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V76 tmp43 [V76 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V77 tmp44 [V77 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V78 tmp45 [V78,T40] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V79 tmp46 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V80 tmp47 [V80,T117] ( 3, 6 ) ref -> rcx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V81 tmp48 [V81,T41] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V82 tmp49 [V82 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V83 tmp50 [V83,T242] ( 3, 0 ) ref -> rax class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V84 tmp51 [V84,T240] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V85 tmp52 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V86 tmp53 [V86,T252] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V87 tmp54 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V88 tmp55 [V88,T243] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V89 tmp56 [V89,T244] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V90 tmp57 [V90,T253] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V91 tmp58 [V91 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V92 tmp59 [V92,T266] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V93 tmp60 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V94 tmp61 [V94,T254] ( 2, 0 ) byref -> r14 "impAppendStmt"
; V95 tmp62 [V95 ] ( 2, 0 ) struct (192) [rbp-0x420] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V96 tmp63 [V96,T255] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V97 tmp64 [V97 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V98 tmp65 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V99 tmp66 [V99,T245] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V100 tmp67 [V100,T246] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V101 tmp68 [V101,T256] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V102 tmp69 [V102 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V103 tmp70 [V103,T267] ( 2, 0 ) long -> rdx "Inlining Arg"
; V104 tmp71 [V104,T65] ( 2, 12 ) ubyte -> [rbp-0x424] spill-single-def "Inlining Arg"
;* V105 tmp72 [V105 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V106 tmp73 [V106 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V107 tmp74 [V107,T168] ( 2, 4 ) struct (192) [rbp-0x4E8] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V108 tmp75 [V108 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V109 tmp76 [V109,T124] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V110 tmp77 [V110,T169] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V111 tmp78 [V111,T33] ( 2, 18 ) int -> [rbp-0x4EC] spill-single-def "Inline stloc first use temp"
;* V112 tmp79 [V112 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V113 tmp80 [V113 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V114 tmp81 [V114 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V115 tmp82 [V115,T125] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V116 tmp83 [V116,T126] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V117 tmp84 [V117,T170] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V118 tmp85 [V118 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V119 tmp86 [V119,T06] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V120 tmp87 [V120,T07] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V121 tmp88 [V121,T47] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V121 tmp88 [V121,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V122 tmp89 [V122 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V123 tmp90 [V123,T127] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V124 tmp91 [V124,T128] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V125 tmp92 [V125,T171] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V126 tmp93 [V126 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V127 tmp94 [V127,T02] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V128 tmp95 [V128,T194] ( 3, 3 ) byref -> rbx single-def "Inlining Arg"
;* V129 tmp96 [V129 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V130 tmp97 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
; V131 tmp98 [V131,T156] ( 5, 5 ) byref -> rsi single-def "Inlining Arg"
; V132 tmp99 [V132,T225] ( 3, 1.50) long -> rdi "Inline return value spill temp"
; V133 tmp100 [V133,T219] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8E0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
+; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
; V135 tmp102 [V135,T226] ( 3, 1.50) int -> [rbp-0x4F0] spill-single-def "Inline stloc first use temp"
; V136 tmp103 [V136,T227] ( 3, 1.50) int -> [rbp-0x4F4] spill-single-def "Inline stloc first use temp"
-; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8E8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8F8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V138 tmp105 [V138 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V139 tmp106 [V139 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V140 tmp107 [V140 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V141 tmp108 [V141 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V142 tmp109 [V142 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V143 tmp110 [V143,T107] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V144 tmp111 [V144 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V145 tmp112 [V145 ] ( 4, 12.50) ref -> [rbp-0x500] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
; V146 tmp113 [V146 ] ( 1, 4 ) ubyte -> [rbp-0x508] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x8F8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
+; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x900] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x908] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
; V149 tmp116 [V149,T88] ( 4, 8 ) int -> [rbp-0x50C] spill-single-def "Inline stloc first use temp"
-; V150 tmp117 [V150,T57] ( 3, 12 ) ref -> [rbp-0x900] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V150 tmp117 [V150,T58] ( 3, 12 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V151 tmp118 [V151,T108] ( 2, 8 ) struct (56) [rbp-0x548] do-not-enreg[HS] must-init hidden-struct-arg "impAppendStmt" <System.Text.Json.JsonReaderState>
; V152 tmp119 [V152,T30] ( 5, 20 ) struct (88) [rbp-0x5A0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]>
-; V153 tmp120 [V153,T55] ( 6, 12 ) ref -> [rbp-0x908] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
-; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V153 tmp120 [V153,T56] ( 6, 12 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x920] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V155 tmp122 [V155,T98] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]>
;* V156 tmp123 [V156 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x928] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V158 tmp125 [V158 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V159 tmp126 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V160 tmp127 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V161 tmp128 [V161 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V162 tmp129 [V162 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x920] spill-single-def "Inlining Arg"
-; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x928] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x930] spill-single-def "Inlining Arg"
+; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x938] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V165 tmp132 [V165 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V166 tmp133 [V166 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V167 tmp134 [V167 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V168 tmp135 [V168 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V169 tmp136 [V169 ] ( 2, 4 ) struct (24) [rbp-0x5B8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V170 tmp137 [V170 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V171 tmp138 [V171 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V172 tmp139 [V172 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V173 tmp140 [V173,T42] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V174 tmp141 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V175 tmp142 [V175,T118] ( 3, 6 ) ref -> r10 class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V176 tmp143 [V176,T43] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V177 tmp144 [V177 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V178 tmp145 [V178,T247] ( 3, 0 ) ref -> rdx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V179 tmp146 [V179,T241] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V180 tmp147 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V181 tmp148 [V181,T257] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V182 tmp149 [V182 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V183 tmp150 [V183,T248] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V184 tmp151 [V184,T249] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V185 tmp152 [V185,T258] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V186 tmp153 [V186 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V187 tmp154 [V187,T268] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V188 tmp155 [V188 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V189 tmp156 [V189,T259] ( 2, 0 ) byref -> rbx "impAppendStmt"
; V190 tmp157 [V190 ] ( 2, 0 ) struct (192) [rbp-0x678] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V191 tmp158 [V191,T260] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V192 tmp159 [V192 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V193 tmp160 [V193 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V194 tmp161 [V194,T250] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V195 tmp162 [V195,T251] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V196 tmp163 [V196,T261] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V197 tmp164 [V197 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V198 tmp165 [V198,T269] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V199 tmp166 [V199 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V200 tmp167 [V200 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V201 tmp168 [V201,T76] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V202 tmp169 [V202,T77] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V203 tmp170 [V203,T172] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V204 tmp171 [V204,T03] ( 5, 40 ) byref -> rsi "Inlining Arg"
;* V205 tmp172 [V205 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V206 tmp173 [V206,T46] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
+; V206 tmp173 [V206,T47] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
;* V207 tmp174 [V207 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V208 tmp175 [V208,T173] ( 2, 4 ) struct (192) [rbp-0x738] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V209 tmp176 [V209 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V210 tmp177 [V210,T129] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V211 tmp178 [V211,T174] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V212 tmp179 [V212,T34] ( 2, 18 ) int -> [rbp-0x73C] spill-single-def "Inline stloc first use temp"
;* V213 tmp180 [V213 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V214 tmp181 [V214 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V215 tmp182 [V215 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V216 tmp183 [V216,T130] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V217 tmp184 [V217,T131] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V218 tmp185 [V218,T175] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V219 tmp186 [V219 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V220 tmp187 [V220,T08] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V221 tmp188 [V221,T09] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V222 tmp189 [V222,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V222 tmp189 [V222,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V223 tmp190 [V223 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V224 tmp191 [V224,T132] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V225 tmp192 [V225,T133] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V226 tmp193 [V226,T176] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V227 tmp194 [V227,T16] ( 4, 32 ) byref -> rdi "Inlining Arg"
; V228 tmp195 [V228,T17] ( 4, 32 ) byref -> rsi "Inlining Arg"
;* V229 tmp196 [V229 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V230 tmp197 [V230 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonPropertyInfo]>
;* V231 tmp198 [V231 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
; V232 tmp199 [V232,T134] ( 3, 6 ) int -> rsi "Inline return value spill temp"
; V233 tmp200 [V233,T62] ( 3, 12 ) int -> rsi "Inlining Arg"
-; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x930] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V235 tmp202 [V235 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
; V236 tmp203 [V236,T135] ( 2, 4 ) int -> rdi "Inline return value spill temp"
;* V237 tmp204 [V237 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V238 tmp205 [V238,T136] ( 3, 6 ) int -> rdi "Inline stloc first use temp"
; V239 tmp206 [V239,T99] ( 2, 8 ) byref -> rdi "Inlining Arg"
-; V240 tmp207 [V240,T109] ( 2, 8 ) long -> rdx "Inlining Arg"
-; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rcx class-hnd "Inlining Arg" <ubyte[]>
-; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rdi class-hnd exact "Inlining Arg" <System.String>
+; V240 tmp207 [V240,T109] ( 2, 8 ) long -> [rbp-0x748] spill-single-def "Inlining Arg"
+; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rdi class-hnd "Inlining Arg" <ubyte[]>
+; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rsi class-hnd exact "Inlining Arg" <System.String>
;* V243 tmp210 [V243 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V244 tmp211 [V244 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V245 tmp212 [V245,T78] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V246 tmp213 [V246,T79] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V247 tmp214 [V247,T177] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V248 tmp215 [V248,T04] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V249 tmp216 [V249,T94] ( 3, 8 ) long -> registers "Inline return value spill temp"
;* V250 tmp217 [V250 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V251 tmp218 [V251 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
-; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x740] spill-single-def "Inline stloc first use temp"
+; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x74C] spill-single-def "Inline stloc first use temp"
; V253 tmp220 [V253,T96] ( 3, 8 ) int -> rbx "Inline stloc first use temp"
;* V254 tmp221 [V254,T216] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V255 tmp222 [V255 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V256 tmp223 [V256 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V257 tmp224 [V257 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V258 tmp225 [V258 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x758] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
+; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x768] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V260 tmp227 [V260 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.SequencePosition>
;* V261 tmp228 [V261 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.SequencePosition>
;* V262 tmp229 [V262 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V263 tmp230 [V263 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
; V264 tmp231 [V264,T89] ( 4, 8 ) int -> rbx "Inline stloc first use temp"
-; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x75C] spill-single-def "Inline stloc first use temp"
+; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x76C] spill-single-def "Inline stloc first use temp"
;* V266 tmp233 [V266 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.SequencePosition>
;* V267 tmp234 [V267,T217] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V268 tmp235 [V268 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
; V269 tmp236 [V269,T90] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V270 tmp237 [V270 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.SequencePosition>
;* V271 tmp238 [V271 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V272 tmp239 [V272 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V273 tmp240 [V273 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V274 tmp241 [V274 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Object>
;* V275 tmp242 [V275 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V276 tmp243 [V276 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Object>
; V277 tmp244 [V277,T110] ( 2, 8 ) int -> r10 "Inlining Arg"
;* V278 tmp245 [V278 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V279 tmp246 [V279,T45] ( 4, 16 ) int -> rsi "Inlining Arg"
+; V279 tmp246 [V279,T46] ( 4, 16 ) int -> rsi "Inlining Arg"
;* V280 tmp247 [V280 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V281 tmp248 [V281,T102] ( 2, 8 ) byref -> r10 "Inlining Arg"
; V282 tmp249 [V282,T111] ( 2, 8 ) int -> r11 "Inlining Arg"
;* V283 tmp250 [V283 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V284 tmp251 [V284 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x820] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
+; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x830] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V286 tmp253 [V286 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V287 tmp254 [V287,T138] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V288 tmp255 [V288,T179] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x824] spill-single-def "Inline stloc first use temp"
+; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x834] spill-single-def "Inline stloc first use temp"
;* V290 tmp257 [V290 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V291 tmp258 [V291 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V292 tmp259 [V292 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V293 tmp260 [V293,T139] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V294 tmp261 [V294,T140] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V295 tmp262 [V295,T180] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V296 tmp263 [V296 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V297 tmp264 [V297,T10] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V298 tmp265 [V298,T11] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V299 tmp266 [V299,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V299 tmp266 [V299,T50] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V300 tmp267 [V300 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V301 tmp268 [V301,T141] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V302 tmp269 [V302,T142] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V303 tmp270 [V303,T181] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V304 tmp271 [V304 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V305 tmp272 [V305,T05] ( 5, 40 ) byref -> rdi "Inlining Arg"
; V306 tmp273 [V306,T233] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
; V307 tmp274 [V307,T234] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V308 tmp275 [V308,T210] ( 2, 2 ) byref -> r14 single-def "impAppendStmt"
; V309 tmp276 [V309,T235] ( 2, 1 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V310 tmp277 [V310 ] ( 0, 0 ) byref -> zero-ref
; V311 tmp278 [V311,T236] ( 2, 1 ) byref -> r15 single-def
; V312 tmp279 [V312,T237] ( 2, 1 ) int -> rdi
; V313 tmp280 [V313,T207] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x938] single-def "Inlining Arg"
-; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x948] single-def "Inlining Arg"
+; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x950] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V316 tmp283 [V316 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x948] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x958] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V318 tmp285 [V318 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V319 tmp286 [V319 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V320 tmp287 [V320 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V321 tmp288 [V321 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V322 tmp289 [V322 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x950] spill-single-def "Inlining Arg"
-; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x958] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x968] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V325 tmp292 [V325 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V326 tmp293 [V326,T103] ( 2, 8 ) byref -> rdi "Inlining Arg"
; V327 tmp294 [V327,T29] ( 5, 20 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Collections.BitArray>
; V328 tmp295 [V328,T27] ( 6, 20 ) int -> rcx "Inlining Arg"
; V329 tmp296 [V329,T182] ( 2, 4 ) int -> rsi "Inline stloc first use temp"
; V330 tmp297 [V330,T119] ( 3, 6 ) byref -> rdx "Inline stloc first use temp"
-; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x970] spill-single-def "Inlining Arg"
; V332 tmp299 [V332,T202] ( 3, 3 ) int -> rax "Single return block return value"
-; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x968] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
-; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x828] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
-; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x970] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
-; V336 tmp303 [V336,T53] ( 6, 12.50) ref -> [rbp-0x978] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
-; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x82C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
-; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x830] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
+; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x978] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
+; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x838] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
+; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x980] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
+; V336 tmp303 [V336,T54] ( 6, 12.50) ref -> [rbp-0x988] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
+; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x83C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
+; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x840] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
;* V339 tmp306 [V339 ] ( 0, 0 ) byref -> zero-ref "field V53._reference (fldOffset=0x0)" P-INDEP
;* V340 tmp307 [V340 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
;* V341 tmp308 [V341 ] ( 0, 0 ) byref -> zero-ref "field V65._reference (fldOffset=0x0)" P-INDEP
;* V342 tmp309 [V342 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V343 tmp310 [V343 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V344 tmp311 [V344 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x980] "field V73._reference (fldOffset=0x0)" P-INDEP
-; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x834] "field V73._length (fldOffset=0x8)" P-INDEP
+; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x990] "field V73._reference (fldOffset=0x0)" P-INDEP
+; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x844] "field V73._length (fldOffset=0x8)" P-INDEP
; V347 tmp314 [V347,T85] ( 4, 8 ) byref -> rax "field V75._reference (fldOffset=0x0)" P-INDEP
; V348 tmp315 [V348,T91] ( 4, 8 ) int -> rcx "field V75._length (fldOffset=0x8)" P-INDEP
;* V349 tmp316 [V349 ] ( 0, 0 ) byref -> zero-ref "field V76._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp317 [V350 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
;* V351 tmp318 [V351 ] ( 0, 0 ) byref -> zero-ref "field V77._reference (fldOffset=0x0)" P-DEP
;* V352 tmp319 [V352 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-DEP
; V353 tmp320 [V353,T120] ( 3, 6 ) byref -> registers "field V79._reference (fldOffset=0x0)" P-INDEP
; V354 tmp321 [V354,T143] ( 3, 6 ) int -> registers "field V79._length (fldOffset=0x8)" P-INDEP
;* V355 tmp322 [V355 ] ( 0, 0 ) byref -> zero-ref "field V85._reference (fldOffset=0x0)" P-INDEP
;* V356 tmp323 [V356 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V357 tmp324 [V357 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp325 [V358 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
;* V359 tmp326 [V359 ] ( 0, 0 ) ref -> zero-ref "field V114._array (fldOffset=0x0)" P-INDEP
;* V360 tmp327 [V360 ] ( 0, 0 ) long -> zero-ref "field V114._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V361 tmp328 [V361,T144] ( 3, 6 ) int -> rax "field V114._currentDepth (fldOffset=0x10)" P-INDEP
;* V362 tmp329 [V362 ] ( 0, 0 ) ref -> zero-ref "field V118._array (fldOffset=0x0)" P-INDEP
;* V363 tmp330 [V363 ] ( 0, 0 ) long -> zero-ref "field V118._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V364 tmp331 [V364,T12] ( 3, 40 ) int -> rcx "field V118._currentDepth (fldOffset=0x10)" P-INDEP
;* V365 tmp332 [V365 ] ( 0, 0 ) ref -> zero-ref "field V122._array (fldOffset=0x0)" P-INDEP
;* V366 tmp333 [V366 ] ( 0, 0 ) long -> zero-ref "field V122._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V367 tmp334 [V367,T145] ( 3, 6 ) int -> rsi "field V122._currentDepth (fldOffset=0x10)" P-INDEP
; V368 tmp335 [V368,T221] ( 3, 1.50) byref -> rax "field V129._reference (fldOffset=0x0)" P-INDEP
; V369 tmp336 [V369,T228] ( 3, 1.50) int -> rdx "field V129._length (fldOffset=0x8)" P-INDEP
;* V370 tmp337 [V370 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
;* V371 tmp338 [V371 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
;* V372 tmp339 [V372 ] ( 0, 0 ) byref -> zero-ref "field V144._reference (fldOffset=0x0)" P-INDEP
;* V373 tmp340 [V373 ] ( 0, 0 ) int -> zero-ref "field V144._length (fldOffset=0x8)" P-INDEP
-; V374 tmp341 [V374,T51] ( 4, 14 ) byref -> [rbp-0x988] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
-; V375 tmp342 [V375,T52] ( 4, 14 ) int -> [rbp-0x838] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
-; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x990] "field V168._reference (fldOffset=0x0)" P-INDEP
-; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x83C] "field V168._length (fldOffset=0x8)" P-INDEP
+; V374 tmp341 [V374,T52] ( 4, 14 ) byref -> [rbp-0x998] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
+; V375 tmp342 [V375,T53] ( 4, 14 ) int -> [rbp-0x848] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
+; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x9A0] "field V168._reference (fldOffset=0x0)" P-INDEP
+; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x84C] "field V168._length (fldOffset=0x8)" P-INDEP
; V378 tmp345 [V378,T86] ( 4, 8 ) byref -> rax "field V170._reference (fldOffset=0x0)" P-INDEP
; V379 tmp346 [V379,T92] ( 4, 8 ) int -> rcx "field V170._length (fldOffset=0x8)" P-INDEP
;* V380 tmp347 [V380 ] ( 0, 0 ) byref -> zero-ref "field V171._reference (fldOffset=0x0)" P-INDEP
;* V381 tmp348 [V381 ] ( 0, 0 ) int -> zero-ref "field V171._length (fldOffset=0x8)" P-INDEP
;* V382 tmp349 [V382 ] ( 0, 0 ) byref -> zero-ref "field V172._reference (fldOffset=0x0)" P-DEP
;* V383 tmp350 [V383 ] ( 0, 0 ) int -> zero-ref "field V172._length (fldOffset=0x8)" P-DEP
; V384 tmp351 [V384,T121] ( 3, 6 ) byref -> registers "field V174._reference (fldOffset=0x0)" P-INDEP
; V385 tmp352 [V385,T146] ( 3, 6 ) int -> registers "field V174._length (fldOffset=0x8)" P-INDEP
;* V386 tmp353 [V386 ] ( 0, 0 ) byref -> zero-ref "field V180._reference (fldOffset=0x0)" P-INDEP
;* V387 tmp354 [V387 ] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
;* V388 tmp355 [V388 ] ( 0, 0 ) byref -> zero-ref "field V188._reference (fldOffset=0x0)" P-INDEP
;* V389 tmp356 [V389 ] ( 0, 0 ) int -> zero-ref "field V188._length (fldOffset=0x8)" P-INDEP
;* V390 tmp357 [V390 ] ( 0, 0 ) ref -> zero-ref "field V200._array (fldOffset=0x0)" P-INDEP
;* V391 tmp358 [V391 ] ( 0, 0 ) long -> zero-ref "field V200._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V392 tmp359 [V392,T80] ( 3, 10 ) int -> rsi "field V200._currentDepth (fldOffset=0x10)" P-INDEP
;* V393 tmp360 [V393 ] ( 0, 0 ) ref -> zero-ref "field V215._array (fldOffset=0x0)" P-INDEP
;* V394 tmp361 [V394 ] ( 0, 0 ) long -> zero-ref "field V215._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V395 tmp362 [V395,T147] ( 3, 6 ) int -> rax "field V215._currentDepth (fldOffset=0x10)" P-INDEP
;* V396 tmp363 [V396 ] ( 0, 0 ) ref -> zero-ref "field V219._array (fldOffset=0x0)" P-INDEP
;* V397 tmp364 [V397 ] ( 0, 0 ) long -> zero-ref "field V219._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V398 tmp365 [V398,T13] ( 3, 40 ) int -> rcx "field V219._currentDepth (fldOffset=0x10)" P-INDEP
;* V399 tmp366 [V399 ] ( 0, 0 ) ref -> zero-ref "field V223._array (fldOffset=0x0)" P-INDEP
;* V400 tmp367 [V400 ] ( 0, 0 ) long -> zero-ref "field V223._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V401 tmp368 [V401,T148] ( 3, 6 ) int -> rsi "field V223._currentDepth (fldOffset=0x10)" P-INDEP
;* V402 tmp369 [V402 ] ( 0, 0 ) ref -> zero-ref "field V244._array (fldOffset=0x0)" P-INDEP
;* V403 tmp370 [V403 ] ( 0, 0 ) long -> zero-ref "field V244._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V404 tmp371 [V404,T81] ( 3, 10 ) int -> rsi "field V244._currentDepth (fldOffset=0x10)" P-INDEP
;* V405 tmp372 [V405 ] ( 0, 0 ) ref -> zero-ref "field V260._object (fldOffset=0x0)" P-INDEP
;* V406 tmp373 [V406 ] ( 0, 0 ) int -> zero-ref "field V260._integer (fldOffset=0x8)" P-INDEP
; V407 tmp374 [V407,T122] ( 3, 6 ) ref -> registers "field V261._object (fldOffset=0x0)" P-INDEP
; V408 tmp375 [V408,T149] ( 3, 6 ) int -> registers "field V261._integer (fldOffset=0x8)" P-INDEP
;* V409 tmp376 [V409,T218] ( 0, 0 ) ref -> zero-ref "field V266._object (fldOffset=0x0)" P-INDEP
; V410 tmp377 [V410,T183] ( 2, 4 ) int -> rbx "field V266._integer (fldOffset=0x8)" P-INDEP
;* V411 tmp378 [V411 ] ( 0, 0 ) ref -> zero-ref "field V268._object (fldOffset=0x0)" P-INDEP
;* V412 tmp379 [V412 ] ( 0, 0 ) int -> zero-ref "field V268._index (fldOffset=0x8)" P-INDEP
; V413 tmp380 [V413,T184] ( 2, 4 ) int -> rcx "field V268._length (fldOffset=0xc)" P-INDEP
;* V414 tmp381 [V414 ] ( 0, 0 ) ref -> zero-ref "field V270._object (fldOffset=0x0)" P-DEP
;* V415 tmp382 [V415 ] ( 0, 0 ) int -> zero-ref "field V270._integer (fldOffset=0x8)" P-DEP
;* V416 tmp383 [V416 ] ( 0, 0 ) ref -> zero-ref "field V275._startObject (fldOffset=0x0)" P-INDEP
;* V417 tmp384 [V417 ] ( 0, 0 ) ref -> zero-ref "field V275._endObject (fldOffset=0x8)" P-INDEP
;* V418 tmp385 [V418 ] ( 0, 0 ) int -> zero-ref "field V275._startInteger (fldOffset=0x10)" P-INDEP
;* V419 tmp386 [V419 ] ( 0, 0 ) int -> zero-ref "field V275._endInteger (fldOffset=0x14)" P-INDEP
; V420 tmp387 [V420,T167] ( 2, 4 ) byref -> r10 "field V280._reference (fldOffset=0x0)" P-INDEP
; V421 tmp388 [V421,T185] ( 2, 4 ) int -> r11 "field V280._length (fldOffset=0x8)" P-INDEP
;* V422 tmp389 [V422 ] ( 0, 0 ) ref -> zero-ref "field V292._array (fldOffset=0x0)" P-INDEP
;* V423 tmp390 [V423 ] ( 0, 0 ) long -> zero-ref "field V292._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V424 tmp391 [V424,T150] ( 3, 6 ) int -> rax "field V292._currentDepth (fldOffset=0x10)" P-INDEP
;* V425 tmp392 [V425 ] ( 0, 0 ) ref -> zero-ref "field V296._array (fldOffset=0x0)" P-INDEP
;* V426 tmp393 [V426 ] ( 0, 0 ) long -> zero-ref "field V296._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V427 tmp394 [V427,T14] ( 3, 40 ) int -> rcx "field V296._currentDepth (fldOffset=0x10)" P-INDEP
;* V428 tmp395 [V428 ] ( 0, 0 ) ref -> zero-ref "field V300._array (fldOffset=0x0)" P-INDEP
;* V429 tmp396 [V429 ] ( 0, 0 ) long -> zero-ref "field V300._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V430 tmp397 [V430,T151] ( 3, 6 ) int -> rsi "field V300._currentDepth (fldOffset=0x10)" P-INDEP
;* V431 tmp398 [V431 ] ( 0, 0 ) ref -> zero-ref "V152.[000..008)"
;* V432 tmp399 [V432 ] ( 0, 0 ) ref -> zero-ref "V152.[008..016)"
;* V433 tmp400 [V433 ] ( 0, 0 ) ref -> zero-ref "V152.[016..024)"
;* V434 tmp401 [V434 ] ( 0, 0 ) long -> zero-ref "V152.[024..032)"
; V435 tmp402 [V435,T123] ( 3, 6 ) ref -> registers "V259.[000..008)"
;* V436 tmp403 [V436 ] ( 0, 0 ) ref -> zero-ref "V259.[008..016)"
; V437 tmp404 [V437,T152] ( 3, 6 ) int -> r10 "V259.[016..020)"
;* V438 tmp405 [V438 ] ( 0, 0 ) int -> zero-ref "V259.[020..024)"
-; V439 tmp406 [V439,T58] ( 3, 12 ) byref -> r8 "Spilling address for field-by-field copy"
+; V439 tmp406 [V439,T44] ( 4, 16 ) byref -> [rbp-0x9A8] spill-single-def "Spilling address for field-by-field copy"
; V440 tmp407 [V440,T199] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V441 tmp408 [V441,T203] ( 3, 3 ) int -> rsi "index expr"
; V442 tmp409 [V442,T104] ( 2, 8 ) ref -> rdi "argument with side effect"
; V443 tmp410 [V443,T112] ( 2, 8 ) int -> rsi "argument with side effect"
; V444 tmp411 [V444,T105] ( 2, 8 ) ref -> rdi "argument with side effect"
; V445 tmp412 [V445,T213] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V446 tmp413 [V446,T262] ( 2, 0 ) ref -> rbx "argument with side effect"
; V447 tmp414 [V447,T263] ( 2, 0 ) ref -> rsi "argument with side effect"
; V448 tmp415 [V448,T264] ( 2, 0 ) ref -> rbx "argument with side effect"
; V449 tmp416 [V449,T265] ( 2, 0 ) ref -> rsi "argument with side effect"
; V450 tmp417 [V450,T200] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V451 tmp418 [V451,T204] ( 3, 3 ) int -> rsi "index expr"
; V452 tmp419 [V452,T201] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V453 tmp420 [V453,T21] ( 3, 24 ) ref -> rdx "arr expr"
; V454 tmp421 [V454,T22] ( 3, 24 ) ref -> rsi "arr expr"
;* V455 tmp422 [V455,T113] ( 0, 0 ) ref -> zero-ref "arr expr"
; V456 tmp423 [V456,T106] ( 2, 8 ) ref -> rdi "argument with side effect"
; V457 tmp424 [V457,T59] ( 3, 12 ) ref -> rdx "arr expr"
; V458 tmp425 [V458,T214] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V459 tmp426 [V459,T215] ( 2, 2 ) ref -> rdx single-def "argument with side effect"
;* V460 cse0 [V460,T159] ( 0, 0 ) long -> zero-ref multi-def "CSE #23: conservative"
-; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x998] spill-single-def "CSE #36: conservative"
+; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x9B0] spill-single-def "CSE #36: conservative"
; V462 cse2 [V462,T60] ( 3, 12 ) byref -> rsi "CSE #54: conservative"
; V463 cse3 [V463,T63] ( 3, 12 ) long -> rsi "CSE #35: conservative"
; V464 cse4 [V464,T64] ( 3, 12 ) long -> rdi "CSE #53: conservative"
-; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x848] multi-def "CSE #19: conservative"
+; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x858] multi-def "CSE #19: conservative"
; V466 cse6 [V466,T153] ( 3, 6 ) int -> rdi "CSE #03: conservative"
; V467 cse7 [V467,T154] ( 3, 6 ) int -> rdi "CSE #20: conservative"
-; V468 cse8 [V468,T44] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
-; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9A0] spill-single-def "CSE #22: conservative"
+; V468 cse8 [V468,T45] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
+; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9B8] spill-single-def "CSE #22: conservative"
; V470 cse10 [V470,T155] ( 3, 6 ) int -> rdi "CSE #44: conservative"
-; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9A8] multi-def "CSE #02: moderate"
-; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x850] "Widened IV V26"
-; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x858] "Widened IV V15"
+; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9C0] multi-def "CSE #02: moderate"
+; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x860] "Widened IV V26"
+; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x868] "Widened IV V15"
; V474 rat2 [V474,T61] ( 3, 12 ) ref -> r11 "delegate invoke call"
-; TEMP_01 int -> [rbp-0x9AC]
-; TEMP_02 ref -> [rbp-0x9B8]
+; TEMP_01 int -> [rbp-0x9C4]
+; TEMP_02 ref -> [rbp-0x9D0]
;
-; Lcl frame size = 2536
+; Lcl frame size = 2552
G_M53340_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 0x9E8
- lea rbp, [rsp+0xA10]
- xor eax, eax
- mov qword ptr [rbp-0x9B8], rax
+ sub rsp, 0x9F8
+ lea rbp, [rsp+0xA20]
vxorps xmm8, xmm8, xmm8
- vmovdqa xmmword ptr [rbp-0x9B0], xmm8
- vmovdqa xmmword ptr [rbp-0x9A0], xmm8
- mov rax, -0x960
+ vmovdqa xmmword ptr [rbp-0x9D0], xmm8
+ mov rax, -0x990
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
mov r13, rdi
mov rbx, rsi
mov rax, rdx
mov r14, rcx
mov r15, r8
mov r12, r9
- ;; size=111 bbWeight=1 PerfScore 22.33
+ ;; size=94 bbWeight=1 PerfScore 19.08
G_M53340_IG02:
mov r10, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x870], r10
+ mov gword ptr [rbp-0x880], r10
cmp gword ptr [r10+0x08], 0
je SHORT G_M53340_IG04
;; size=18 bbWeight=1 PerfScore 7.00
G_M53340_IG03:
cmp byte ptr [r15+0x90], 0
je SHORT G_M53340_IG05
;; size=10 bbWeight=0.50 PerfScore 2.00
G_M53340_IG04:
mov rdi, r13
mov rsi, rbx
mov rdx, rax
mov rcx, r14
mov r8, r15
mov r9, r12
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
jmp G_M53340_IG189
;; size=35 bbWeight=0.50 PerfScore 3.38
G_M53340_IG05:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x878], rcx
+ mov gword ptr [rbp-0x888], rcx
cmp byte ptr [r15+0x28], 0
jne SHORT G_M53340_IG07
cmp byte ptr [r15+0x8B], 0
jne SHORT G_M53340_IG06
cmp byte ptr [rbx+0x28], 1
jne G_M53340_IG218
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M53340_IG08
xor rdi, rdi
jmp SHORT G_M53340_IG09
;; size=52 bbWeight=0.50 PerfScore 10.62
G_M53340_IG06:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M53340_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M53340_IG07:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M53340_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M53340_IG08:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M53340_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M53340_IG09:
test rdi, rdi
je G_M53340_IG50
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M53340_IG50
mov r13, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M53340_IG10
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=62 bbWeight=0.50 PerfScore 8.75
G_M53340_IG10:
lea rcx, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rcx
- mov bword ptr [rbp-0x8D0], rcx
- mov rax, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rcx
+ mov bword ptr [rbp-0x8E0], rcx
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M53340_IG11
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x8D8], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x8E8], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov r8, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [r8]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x8D0]
+ mov rdi, bword ptr [rbp-0x8E0]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x8D8]
+ mov rsi, gword ptr [rbp-0x8E8]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=110 bbWeight=0.50 PerfScore 10.00
G_M53340_IG11:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M53340_IG42
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M53340_IG13
;; size=31 bbWeight=4 PerfScore 46.00
G_M53340_IG12:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M53340_IG16
;; size=20 bbWeight=2 PerfScore 13.00
G_M53340_IG13:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x360], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x350], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M53340_IG14:
lea rdi, [rbp-0x360]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M53340_IG15
xor rax, rax
xor ecx, ecx
jmp SHORT G_M53340_IG16
;; size=30 bbWeight=2 PerfScore 15.00
G_M53340_IG15:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M53340_IG16:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M53340_IG18
;; size=6 bbWeight=4 PerfScore 16.00
G_M53340_IG17:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M53340_IG19
;; size=8 bbWeight=2 PerfScore 5.00
G_M53340_IG18:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M53340_IG19:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M53340_IG23
;; size=10 bbWeight=4 PerfScore 16.00
G_M53340_IG20:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M53340_IG21
mov rcx, gword ptr [rdi+0x28]
jmp SHORT G_M53340_IG22
;; size=22 bbWeight=2 PerfScore 18.50
G_M53340_IG21:
mov rcx, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M53340_IG22:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rcx+0x88]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rcx]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M53340_IG33
cmp byte ptr [r14+0x93], 0
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
je G_M53340_IG193
;; size=75 bbWeight=2 PerfScore 30.00
G_M53340_IG23:
mov dword ptr [rsp], 1
mov rsi, rdx
mov edx, r8d
lea r9, [rbp-0x348]
mov rdi, r13
mov rcx, r15
mov r8, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [rax]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8C8], rax
+ mov gword ptr [rbp-0x8D8], rax
movzx rcx, byte ptr [rbp-0x348]
mov dword ptr [rbp-0x424], ecx
cmp byte ptr [rax+0x9C], 0
jne G_M53340_IG37
;; size=74 bbWeight=4 PerfScore 52.00
G_M53340_IG24:
cmp byte ptr [rbx+0x24], 0
je G_M53340_IG34
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M53340_IG25
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=31 bbWeight=2 PerfScore 23.00
G_M53340_IG25:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M53340_IG26
cmp eax, 3
jne G_M53340_IG39
;; size=21 bbWeight=2 PerfScore 9.50
G_M53340_IG26:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M53340_IG27
cmp edi, 3
jne SHORT G_M53340_IG28
;; size=15 bbWeight=2 PerfScore 9.50
G_M53340_IG27:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG28:
mov dword ptr [rbp-0x4EC], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M53340_IG29:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M53340_IG31
;; size=30 bbWeight=16 PerfScore 144.00
G_M53340_IG30:
cmp esi, 3
jne SHORT G_M53340_IG32
;; size=5 bbWeight=8 PerfScore 10.00
G_M53340_IG31:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M53340_IG32:
mov ecx, dword ptr [rbp-0x4EC]
cmp ecx, edi
jl SHORT G_M53340_IG29
jmp G_M53340_IG39
;; size=15 bbWeight=16 PerfScore 68.00
G_M53340_IG33:
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
jmp G_M53340_IG23
;; size=19 bbWeight=1 PerfScore 4.00
G_M53340_IG34:
lea rdi, bword ptr [rbp-0x4E8]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M53340_IG35
cmp edi, 3
jne SHORT G_M53340_IG36
;; size=38 bbWeight=2 PerfScore 65.50
G_M53340_IG35:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG36:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
- jne G_M53340_IG39
+ jne SHORT G_M53340_IG39
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x4E8]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ lea rsi, [rbp-0x4E8]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
jmp SHORT G_M53340_IG39
- ;; size=108 bbWeight=2 PerfScore 102.00
+ ;; size=43 bbWeight=2 PerfScore 18.00
G_M53340_IG37:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0x424], 0
jne SHORT G_M53340_IG38
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M53340_IG39
;; size=52 bbWeight=2 PerfScore 34.50
G_M53340_IG38:
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=28 bbWeight=2 PerfScore 10.00
G_M53340_IG39:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=15 bbWeight=4 PerfScore 10.00
G_M53340_IG40:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M53340_IG41:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
jmp G_M53340_IG11
;; size=13 bbWeight=4 PerfScore 16.00
G_M53340_IG42:
- mov r14, gword ptr [rbp-0x870]
+ mov r14, gword ptr [rbp-0x880]
mov rcx, gword ptr [r14+0x40]
test rcx, rcx
je SHORT G_M53340_IG43
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M53340_IG43:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rbx, rax
cmp dword ptr [r14+0xF4], 0
jle G_M53340_IG49
mov rdi, gword ptr [rbx+0x48]
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rcx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne SHORT G_M53340_IG48
mov rsi, gword ptr [rbx+0x48]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
;; size=72 bbWeight=0.50 PerfScore 10.62
G_M53340_IG44:
cmp gword ptr [r15+0x68], 0
je SHORT G_M53340_IG45
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
;; size=25 bbWeight=0.50 PerfScore 3.88
G_M53340_IG45:
mov rsi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [r13], rsi
je SHORT G_M53340_IG47
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M53340_IG46:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int32
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M53340_IG47:
mov esi, dword ptr [r13+0x08]
mov dword ptr [r12], esi
jmp G_M53340_IG149
;; size=13 bbWeight=0.50 PerfScore 2.50
G_M53340_IG48:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M53340_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M53340_IG49:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M53340_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M53340_IG50:
lea rsi, bword ptr [rbx+0x80]
mov rdi, gword ptr [rsi]
mov rax, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8E0], rax
+ mov gword ptr [rbp-0x8F0], rax
mov edx, dword ptr [rsi+0x10]
and edx, 0xD1FFAB1E
mov dword ptr [rbp-0x4F0], edx
mov r8d, dword ptr [rsi+0x14]
and r8d, 0xD1FFAB1E
mov dword ptr [rbp-0x4F4], r8d
cmp rdi, rax
je SHORT G_M53340_IG51
mov rsi, rdi
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r9, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r9]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x8E8], rax
- mov rsi, gword ptr [rbp-0x8E0]
+ mov gword ptr [rbp-0x8F8], rax
+ mov rsi, gword ptr [rbp-0x8F0]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rdi, dword ptr [rbp-0x4F4]
add rdi, qword ptr [rax+0x10]
movsxd rax, dword ptr [rbp-0x4F0]
- mov rcx, gword ptr [rbp-0x8E8]
+ mov rcx, gword ptr [rbp-0x8F8]
add rax, qword ptr [rcx+0x10]
sub rdi, rax
jmp SHORT G_M53340_IG52
;; size=155 bbWeight=0.50 PerfScore 18.88
G_M53340_IG51:
mov r8d, dword ptr [rbp-0x4F4]
sub r8d, dword ptr [rbp-0x4F0]
movsxd rdi, r8d
;; size=17 bbWeight=0.50 PerfScore 1.62
G_M53340_IG52:
test rdi, rdi
je SHORT G_M53340_IG53
xor rax, rax
xor edx, edx
jmp SHORT G_M53340_IG54
;; size=11 bbWeight=0.50 PerfScore 1.88
G_M53340_IG53:
mov rax, bword ptr [rbx+0x30]
mov edx, dword ptr [rbx+0x38]
;; size=7 bbWeight=0.50 PerfScore 2.00
G_M53340_IG54:
- mov bword ptr [rbp-0x968], rax
- mov dword ptr [rbp-0x828], edx
+ mov bword ptr [rbp-0x978], rax
+ mov dword ptr [rbp-0x838], edx
mov rsi, gword ptr [rbx+0x80]
- mov gword ptr [rbp-0x970], rsi
+ mov gword ptr [rbp-0x980], rsi
mov r8, gword ptr [rbx+0x88]
- mov gword ptr [rbp-0x978], r8
+ mov gword ptr [rbp-0x988], r8
mov r9d, dword ptr [rbx+0x90]
- mov dword ptr [rbp-0x82C], r9d
+ mov dword ptr [rbp-0x83C], r9d
mov r11d, dword ptr [rbx+0x94]
- mov dword ptr [rbp-0x830], r11d
+ mov dword ptr [rbp-0x840], r11d
mov rdi, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x918], rdi
+ mov gword ptr [rbp-0x928], rdi
cmp byte ptr [rdi+0x103], 0
jne G_M53340_IG202
mov eax, dword ptr [rdi+0xF0]
- mov dword ptr [rbp-0x9AC], eax
+ mov dword ptr [rbp-0x9C4], eax
mov rax, gword ptr [rdi+0x08]
mov rax, gword ptr [rax+0x10]
- mov edi, dword ptr [rbp-0x9AC]
+ mov edi, dword ptr [rbp-0x9C4]
cmp edi, dword ptr [rax+0x10]
jne G_M53340_IG220
lea rax, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rax
- mov bword ptr [rbp-0x920], rax
- mov rdi, gword ptr [rbp-0x918]
+ mov bword ptr [rbp-0x9C0], rax
+ mov bword ptr [rbp-0x930], rax
+ mov rdi, gword ptr [rbp-0x928]
cmp dword ptr [rdi+0xF4], 0
jle SHORT G_M53340_IG55
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x928], rax
- mov rcx, gword ptr [rbp-0x918]
+ mov gword ptr [rbp-0x938], rax
+ mov rcx, gword ptr [rbp-0x928]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x920]
+ mov rdi, bword ptr [rbp-0x930]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x928]
+ mov rsi, gword ptr [rbp-0x938]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=237 bbWeight=0.50 PerfScore 26.50
G_M53340_IG55:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
- mov gword ptr [rbp-0x9B8], rdx
+ mov gword ptr [rbp-0x9D0], rdx
mov rdx, qword ptr [r13]
mov rdx, qword ptr [rdx+0x68]
- mov qword ptr [rbp-0x848], rdx
- mov rdx, gword ptr [rbp-0x9B8]
- mov r11, qword ptr [rbp-0x848]
+ mov qword ptr [rbp-0x858], rdx
+ mov rdx, gword ptr [rbp-0x9D0]
+ mov r11, qword ptr [rbp-0x858]
call [r11+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
;; size=55 bbWeight=0.50 PerfScore 6.50
G_M53340_IG56:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M53340_IG107
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M53340_IG58
;; size=31 bbWeight=4 PerfScore 46.00
G_M53340_IG57:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M53340_IG61
;; size=20 bbWeight=2 PerfScore 13.00
G_M53340_IG58:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x5B8], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x5A8], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M53340_IG59:
lea rdi, [rbp-0x5B8]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M53340_IG60
xor rax, rax
xor ecx, ecx
jmp SHORT G_M53340_IG61
;; size=30 bbWeight=2 PerfScore 15.00
G_M53340_IG60:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M53340_IG61:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M53340_IG63
;; size=6 bbWeight=4 PerfScore 16.00
G_M53340_IG62:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M53340_IG64
;; size=8 bbWeight=2 PerfScore 5.00
G_M53340_IG63:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M53340_IG64:
- mov bword ptr [rbp-0x990], rdx
+ mov bword ptr [rbp-0x9A0], rdx
mov rax, rdx
- mov bword ptr [rbp-0x988], rax
- mov dword ptr [rbp-0x83C], r8d
+ mov bword ptr [rbp-0x998], rax
+ mov dword ptr [rbp-0x84C], r8d
mov ecx, r8d
- mov dword ptr [rbp-0x838], ecx
+ mov dword ptr [rbp-0x848], ecx
cmp byte ptr [r15+0x8B], 0
je G_M53340_IG74
;; size=47 bbWeight=4 PerfScore 34.00
G_M53340_IG65:
- mov r9, bword ptr [rbp-0x9A8]
+ mov r9, bword ptr [rbp-0x9C0]
mov rdi, r9
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M53340_IG66
mov r10, gword ptr [rdi+0x28]
jmp SHORT G_M53340_IG67
;; size=22 bbWeight=2 PerfScore 18.50
G_M53340_IG66:
mov r10, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M53340_IG67:
mov rdi, rax
mov esi, ecx
mov rdx, gword ptr [r10+0x88]
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [r10]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
- mov rax, bword ptr [rbp-0x988]
- mov ecx, dword ptr [rbp-0x838]
+ mov rax, bword ptr [rbp-0x998]
+ mov ecx, dword ptr [rbp-0x848]
je SHORT G_M53340_IG74
cmp byte ptr [r14+0x93], 0
je G_M53340_IG203
;; size=56 bbWeight=2 PerfScore 26.00
G_M53340_IG68:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M53340_IG70
;; size=15 bbWeight=4 PerfScore 22.00
G_M53340_IG69:
cmp edi, 3
jne SHORT G_M53340_IG71
;; size=5 bbWeight=2 PerfScore 2.50
G_M53340_IG70:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG71:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdx, rdx
mov gword ptr [rsi], rdx
;; size=32 bbWeight=4 PerfScore 25.00
G_M53340_IG72:
mov gword ptr [rsi+0x08], rdx
;; size=4 bbWeight=4 PerfScore 4.00
G_M53340_IG73:
mov gword ptr [rsi+0x10], rdx
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M53340_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M53340_IG74:
lea rsi, [rbp-0x500]
mov qword ptr [rsp], rsi
mov rsi, rax
mov edx, ecx
mov rdi, r13
mov rcx, r15
mov r8, rbx
mov r9, r14
- mov r10, qword ptr [rbp-0x848]
+ mov r10, qword ptr [rbp-0x858]
call [r10+0x20]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:TryLookupConstructorParameter(System.ReadOnlySpan`1[ubyte],byref,byref,System.Text.Json.JsonSerializerOptions,byref):ubyte:this
test eax, eax
je G_M53340_IG91
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov rdi, gword ptr [rbp-0x500]
cmp byte ptr [rdi+0x35], 0
jne G_M53340_IG89
cmp byte ptr [rbx+0x24], 0
je SHORT G_M53340_IG84
;; size=85 bbWeight=4 PerfScore 83.00
G_M53340_IG75:
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M53340_IG76
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=21 bbWeight=2 PerfScore 15.00
G_M53340_IG76:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M53340_IG77
cmp eax, 3
jne G_M53340_IG87
;; size=21 bbWeight=2 PerfScore 9.50
G_M53340_IG77:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M53340_IG78
cmp edi, 3
jne SHORT G_M53340_IG79
;; size=15 bbWeight=2 PerfScore 9.50
G_M53340_IG78:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG79:
mov dword ptr [rbp-0x73C], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M53340_IG80:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M53340_IG82
;; size=30 bbWeight=16 PerfScore 144.00
G_M53340_IG81:
cmp esi, 3
jne SHORT G_M53340_IG83
;; size=5 bbWeight=8 PerfScore 10.00
G_M53340_IG82:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M53340_IG83:
mov ecx, dword ptr [rbp-0x73C]
cmp ecx, edi
jl SHORT G_M53340_IG80
- jmp G_M53340_IG87
- ;; size=15 bbWeight=16 PerfScore 68.00
+ jmp SHORT G_M53340_IG87
+ ;; size=12 bbWeight=16 PerfScore 68.00
G_M53340_IG84:
lea rdi, bword ptr [rbp-0x738]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M53340_IG85
cmp edi, 3
jne SHORT G_M53340_IG86
;; size=38 bbWeight=2 PerfScore 65.50
G_M53340_IG85:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG86:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M53340_IG87
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x738]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=102 bbWeight=2 PerfScore 98.00
+ lea rsi, [rbp-0x738]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=41 bbWeight=2 PerfScore 14.00
G_M53340_IG87:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
mov rsi, gword ptr [rdi+0x40]
xor rdx, rdx
mov gword ptr [rsi+0x20], rdx
;; size=20 bbWeight=4 PerfScore 18.00
G_M53340_IG88:
mov gword ptr [rdi+0x08], rdx
mov byte ptr [rdi+0x58], 0
jmp G_M53340_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M53340_IG89:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, gword ptr [rbp-0x500]
- mov r8, qword ptr [rbp-0x848]
+ mov r8, qword ptr [rbp-0x858]
call [r8+0x10]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:ReadAndCacheConstructorArgument(byref,byref,System.Text.Json.Serialization.Metadata.JsonParameterInfo):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
mov rdx, gword ptr [rsi+0x40]
xor r9, r9
mov gword ptr [rdx+0x20], r9
;; size=48 bbWeight=4 PerfScore 41.00
G_M53340_IG90:
mov gword ptr [rsi+0x08], r9
mov byte ptr [rsi+0x58], 0
jmp G_M53340_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M53340_IG91:
xor esi, esi
mov dword ptr [rsp], esi
- mov rsi, bword ptr [rbp-0x988]
- mov edx, dword ptr [rbp-0x838]
+ mov rsi, bword ptr [rbp-0x998]
+ mov edx, dword ptr [rbp-0x848]
lea r9, [rbp-0x508]
mov rcx, r15
mov r8, r14
xor rdi, rdi
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [r10]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8F0], rax
+ mov gword ptr [rbp-0x900], rax
cmp byte ptr [rax+0x9B], 0
je G_M53340_IG100
;; size=66 bbWeight=4 PerfScore 51.00
G_M53340_IG92:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x8F8], rcx
+ mov gword ptr [rbp-0x908], rcx
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x9A0], rdx
+ mov gword ptr [rbp-0x9B8], rdx
test rdx, rdx
jne SHORT G_M53340_IG95
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, gword ptr [r15+0x58]
mov rsi, gword ptr [rsi+0x10]
mov rsi, gword ptr [rsi+0x10]
mov esi, dword ptr [rsi+0x10]
cmp esi, 1
jle SHORT G_M53340_IG93
jmp SHORT G_M53340_IG94
;; size=82 bbWeight=2 PerfScore 44.50
G_M53340_IG93:
mov esi, 1
;; size=5 bbWeight=2 PerfScore 0.50
G_M53340_IG94:
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
lea rdi, bword ptr [rcx+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
jmp G_M53340_IG97
;; size=38 bbWeight=2 PerfScore 22.00
G_M53340_IG95:
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
mov edi, dword ptr [rcx+0x30]
cmp edi, dword ptr [rdx+0x08]
jne G_M53340_IG97
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x9A0]
+ mov rsi, gword ptr [rbp-0x9B8]
mov esi, dword ptr [rsi+0x08]
add esi, esi
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov gword ptr [rbp-0x908], rax
- mov rcx, gword ptr [rbp-0x8F8]
+ mov gword ptr [rbp-0x918], rax
+ mov rcx, gword ptr [rbp-0x908]
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x930], rdx
+ mov gword ptr [rbp-0x940], rdx
cmp byte ptr [rdx], dl
test rax, rax
je G_M53340_IG106
mov rdi, qword ptr [rax]
mov edi, dword ptr [rdi+0x04]
add edi, -24
shr edi, 3
je SHORT G_M53340_IG96
cmp edi, 1
jne G_M53340_IG213
;; size=137 bbWeight=2 PerfScore 73.00
G_M53340_IG96:
mov rdi, rdx
xor esi, esi
mov r8, 0xD1FFAB1E ; code for System.Array:GetLowerBound(int):int:this
call [r8]System.Array:GetLowerBound(int):int:this
mov esi, eax
- mov rdi, gword ptr [rbp-0x930]
+ mov rdi, gword ptr [rbp-0x940]
mov r8d, dword ptr [rdi+0x08]
test r8d, r8d
jl G_M53340_IG191
- mov rdx, gword ptr [rbp-0x908]
+ mov rdx, gword ptr [rbp-0x918]
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Array:Copy(System.Array,int,System.Array,int,int)
call [rax]System.Array:Copy(System.Array,int,System.Array,int,int)
- mov rax, gword ptr [rbp-0x8F8]
+ mov rax, gword ptr [rbp-0x908]
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x910], rcx
+ mov gword ptr [rbp-0x920], rcx
lea rdi, bword ptr [rax+0x10]
- mov rsi, gword ptr [rbp-0x908]
+ mov rsi, gword ptr [rbp-0x918]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x910]
+ mov rsi, gword ptr [rbp-0x920]
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
;; size=134 bbWeight=2 PerfScore 58.00
G_M53340_IG97:
- mov rsi, gword ptr [rbp-0x8F8]
+ mov rsi, gword ptr [rbp-0x908]
mov rax, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x900], rax
+ mov gword ptr [rbp-0x910], rax
mov ecx, dword ptr [rsi+0x30]
mov dword ptr [rbp-0x50C], ecx
lea edi, [rcx+0x01]
mov dword ptr [rsi+0x30], edi
lea rsi, [rbp-0x548]
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
call [rdx]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
- mov rdx, qword ptr [rbx+0x10]
- movsxd r8, dword ptr [rbx+0x20]
- add rdx, r8
- mov rcx, gword ptr [r15+0x38]
- mov rdi, gword ptr [r15+0x40]
- ;; size=74 bbWeight=2 PerfScore 45.50
+ mov rax, qword ptr [rbx+0x10]
+ movsxd rcx, dword ptr [rbx+0x20]
+ add rax, rcx
+ mov qword ptr [rbp-0x748], rax
+ mov rdi, gword ptr [r15+0x38]
+ mov rsi, gword ptr [r15+0x40]
+ ;; size=81 bbWeight=2 PerfScore 47.50
G_M53340_IG98:
vmovdqu ymm0, ymmword ptr [rbp-0x548]
vmovdqu ymmword ptr [rbp-0x580], ymm0
vmovdqu ymm0, ymmword ptr [rbp-0x530]
vmovdqu ymmword ptr [rbp-0x568], ymm0
;; size=32 bbWeight=2 PerfScore 20.00
G_M53340_IG99:
- mov rsi, gword ptr [rbp-0x8F0]
- mov gword ptr [rbp-0x5A0], rsi
- mov gword ptr [rbp-0x598], rcx
- mov gword ptr [rbp-0x590], rdi
- mov ecx, dword ptr [rbp-0x50C]
- mov rdi, gword ptr [rbp-0x900]
- cmp ecx, dword ptr [rdi+0x08]
+ mov rdx, gword ptr [rbp-0x900]
+ mov gword ptr [rbp-0x5A0], rdx
+ mov gword ptr [rbp-0x598], rdi
+ mov gword ptr [rbp-0x590], rsi
+ mov edi, dword ptr [rbp-0x50C]
+ mov rsi, gword ptr [rbp-0x910]
+ cmp edi, dword ptr [rsi+0x08]
jae G_M53340_IG192
- imul rcx, rcx, 88
- lea r8, bword ptr [rdi+rcx+0x10]
- mov rdi, r8
- lea rsi, bword ptr [rbp-0x5A0]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 5
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- mov qword ptr [r8+0x18], rdx
- ;; size=105 bbWeight=2 PerfScore 92.00
+ imul rdi, rdi, 88
+ lea rcx, bword ptr [rsi+rdi+0x10]
+ mov bword ptr [rbp-0x9A8], rcx
+ cmp byte ptr [rcx], cl
+ mov rdi, rcx
+ lea rsi, [rbp-0x5A0]
+ mov edx, 32
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rdi, bword ptr [rbp-0x9A8]
+ mov rsi, qword ptr [rbp-0x748]
+ mov qword ptr [rdi+0x18], rsi
+ ;; size=106 bbWeight=2 PerfScore 44.00
G_M53340_IG100:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M53340_IG102
;; size=15 bbWeight=4 PerfScore 22.00
G_M53340_IG101:
cmp edi, 3
jne SHORT G_M53340_IG103
;; size=5 bbWeight=2 PerfScore 2.50
G_M53340_IG102:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG103:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=32 bbWeight=4 PerfScore 25.00
G_M53340_IG104:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M53340_IG105:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M53340_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M53340_IG106:
jmp G_M53340_IG96
;; size=5 bbWeight=1 PerfScore 2.00
G_M53340_IG107:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
xor rsi, rsi
mov gword ptr [rbp-0x500], rsi
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rsi, rax
mov rdi, r13
- mov r13, qword ptr [rbp-0x848]
+ mov r13, qword ptr [rbp-0x858]
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:CreateObject(byref):System.Object:this
mov rbx, rax
mov rsi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [rbx], rsi
je SHORT G_M53340_IG109
;; size=58 bbWeight=0.50 PerfScore 6.12
G_M53340_IG108:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Int32
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M53340_IG109:
mov rdi, 0xD1FFAB1E ; System.Int32
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov esi, dword ptr [rbx+0x08]
mov dword ptr [r13+0x08], esi
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
mov rax, gword ptr [rbx+0x38]
test rax, rax
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
je SHORT G_M53340_IG110
mov rsi, r13
mov rdi, gword ptr [rax+0x08]
call [rax+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=58 bbWeight=0.50 PerfScore 7.50
G_M53340_IG110:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp dword ptr [rax+0x30], 0
jle G_M53340_IG143
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x880], rcx
+ mov gword ptr [rbp-0x890], rcx
xor edx, edx
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
;; size=37 bbWeight=0.50 PerfScore 4.62
G_M53340_IG111:
cmp edx, dword ptr [rcx+0x08]
jae G_M53340_IG192
- mov qword ptr [rbp-0x858], rdx
+ mov qword ptr [rbp-0x868], rdx
imul rsi, rdx, 88
mov r8, gword ptr [rcx+rsi+0x10]
- mov gword ptr [rbp-0x888], r8
+ mov gword ptr [rbp-0x898], r8
lea r9, bword ptr [rcx+rsi+0x10]
- mov bword ptr [rbp-0x998], r9
+ mov bword ptr [rbp-0x9B0], r9
mov r10, qword ptr [r9+0x18]
mov qword ptr [rbp-0xF0], r10
mov r11, gword ptr [r9+0x08]
- mov gword ptr [rbp-0x890], r11
+ mov gword ptr [rbp-0x8A0], r11
mov rdi, gword ptr [r9+0x10]
- mov gword ptr [rbp-0x898], rdi
- mov esi, dword ptr [rbp-0x82C]
+ mov gword ptr [rbp-0x8A8], rdi
+ mov esi, dword ptr [rbp-0x83C]
mov r12d, esi
and r12d, 0xD1FFAB1E
- mov dword ptr [rbp-0x740], r12d
- mov ebx, dword ptr [rbp-0x830]
+ mov dword ptr [rbp-0x74C], r12d
+ mov ebx, dword ptr [rbp-0x840]
and ebx, 0xD1FFAB1E
- mov rsi, gword ptr [rbp-0x970]
- mov r12, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x980]
+ mov r12, gword ptr [rbp-0x988]
cmp rsi, r12
je SHORT G_M53340_IG113
;; size=131 bbWeight=4 PerfScore 112.00
G_M53340_IG112:
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r12, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r12]CORINFO_HELP_CHKCASTCLASS
- mov rsi, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x988]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
call [r12]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, ebx
add rsi, qword ptr [rax+0x10]
- movsxd rdi, dword ptr [rbp-0x740]
- mov r12, gword ptr [rbp-0x970]
+ movsxd rdi, dword ptr [rbp-0x74C]
+ mov r12, gword ptr [rbp-0x980]
add rdi, qword ptr [r12+0x10]
sub rsi, rdi
jmp SHORT G_M53340_IG114
;; size=76 bbWeight=2 PerfScore 40.50
G_M53340_IG113:
- sub ebx, dword ptr [rbp-0x740]
+ sub ebx, dword ptr [rbp-0x74C]
movsxd rbx, ebx
mov r12, rsi
mov rsi, rbx
;; size=15 bbWeight=2 PerfScore 5.50
G_M53340_IG114:
test rsi, rsi
je G_M53340_IG121
;; size=9 bbWeight=4 PerfScore 5.00
G_M53340_IG115:
mov r10, qword ptr [rbp-0xF0]
test r10, r10
jl G_M53340_IG214
test r10, r10
jne SHORT G_M53340_IG116
mov rbx, r12
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov r10d, esi
jmp G_M53340_IG120
;; size=38 bbWeight=2 PerfScore 14.00
G_M53340_IG116:
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov ebx, esi
and ebx, 0xD1FFAB1E
- mov r11d, dword ptr [rbp-0x830]
+ mov r11d, dword ptr [rbp-0x840]
and r11d, 0xD1FFAB1E
- mov dword ptr [rbp-0x75C], r11d
- mov rdi, gword ptr [rbp-0x978]
+ mov dword ptr [rbp-0x76C], r11d
+ mov rdi, gword ptr [rbp-0x988]
cmp r12, rdi
je SHORT G_M53340_IG117
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r11]CORINFO_HELP_CHKCASTCLASS
mov ecx, dword ptr [r12+0x24]
sub ecx, ebx
movsxd rdi, ecx
mov rsi, qword ptr [rbp-0xF0]
cmp rdi, rsi
jg SHORT G_M53340_IG118
test ecx, ecx
jl G_M53340_IG215
movsxd rcx, ecx
sub rsi, rcx
mov rcx, rsi
mov rdi, gword ptr [r12+0x08]
- mov rsi, gword ptr [rbp-0x978]
- mov edx, dword ptr [rbp-0x75C]
+ mov rsi, gword ptr [rbp-0x988]
+ mov edx, dword ptr [rbp-0x76C]
mov r8d, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
jmp SHORT G_M53340_IG119
;; size=150 bbWeight=2 PerfScore 52.00
G_M53340_IG117:
- mov r11d, dword ptr [rbp-0x75C]
+ mov r11d, dword ptr [rbp-0x76C]
sub r11d, ebx
movsxd r11, r11d
mov r10, qword ptr [rbp-0xF0]
cmp r11, r10
mov rsi, r10
jl G_M53340_IG216
;; size=32 bbWeight=2 PerfScore 8.00
G_M53340_IG118:
add ebx, esi
mov rsi, r12
mov rax, rsi
mov edx, ebx
;; size=10 bbWeight=2 PerfScore 2.00
G_M53340_IG119:
- mov ebx, dword ptr [rbp-0x82C]
+ mov ebx, dword ptr [rbp-0x83C]
mov r10d, ebx
and r10d, 0xD1FFAB1E
or r10d, edx
mov rbx, rax
;; size=22 bbWeight=2 PerfScore 4.00
G_M53340_IG120:
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x340], ymm0
vmovdqu ymmword ptr [rbp-0x320], ymm0
vmovdqu ymmword ptr [rbp-0x300], ymm0
vmovdqu ymmword ptr [rbp-0x2E0], ymm0
vmovdqu ymmword ptr [rbp-0x2C0], ymm0
vmovdqu ymmword ptr [rbp-0x2A0], ymm0
- mov gword ptr [rbp-0x758], rbx
- mov rbx, gword ptr [rbp-0x978]
- mov gword ptr [rbp-0x750], rbx
- mov dword ptr [rbp-0x748], r10d
- mov r10d, dword ptr [rbp-0x830]
- mov dword ptr [rbp-0x744], r10d
+ mov gword ptr [rbp-0x768], rbx
+ mov rbx, gword ptr [rbp-0x988]
+ mov gword ptr [rbp-0x760], rbx
+ mov dword ptr [rbp-0x758], r10d
+ mov r10d, dword ptr [rbp-0x840]
+ mov dword ptr [rbp-0x754], r10d
lea rdi, [rsp]
- lea rsi, [rbp-0x758]
+ lea rsi, [rbp-0x768]
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
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp+0x18]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x38], rcx
add rsi, 8
add rdi, 8
movsq
movsq
lea rdi, [rbp-0x340]
mov esi, 1
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [rcx]System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x340]
mov ecx, 24
rep movsq
jmp G_M53340_IG122
;; size=236 bbWeight=2 PerfScore 172.67
G_M53340_IG121:
mov r10, qword ptr [rbp-0xF0]
movsxd rsi, r10d
cmp r10, rsi
jne G_M53340_IG191
mov esi, r10d
- cmp esi, dword ptr [rbp-0x828]
+ cmp esi, dword ptr [rbp-0x838]
ja G_M53340_IG217
mov r10d, esi
- add r10, bword ptr [rbp-0x968]
- mov r11d, dword ptr [rbp-0x828]
+ add r10, bword ptr [rbp-0x978]
+ mov r11d, dword ptr [rbp-0x838]
sub r11d, esi
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x1C0], ymm0
vmovdqu ymmword ptr [rbp-0x1A0], ymm0
vmovdqu ymmword ptr [rbp-0x180], ymm0
vmovdqu ymmword ptr [rbp-0x160], ymm0
vmovdqu ymmword ptr [rbp-0x140], ymm0
vmovdqu ymmword ptr [rbp-0x120], ymm0
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x20], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rsi, r10
mov edx, r11d
lea rdi, [rbp-0x1C0]
mov ecx, 1
mov r9, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [r9]System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x1C0]
mov ecx, 24
rep movsq
- mov rbx, gword ptr [rbp-0x978]
+ mov rbx, gword ptr [rbp-0x988]
;; size=212 bbWeight=2 PerfScore 160.17
G_M53340_IG122:
lea rdi, bword ptr [rbp-0xE8]
lea rsi, bword ptr [rbp-0x280]
mov ecx, 24
rep movsq
lea rdi, bword ptr [r15+0x38]
- mov rsi, gword ptr [rbp-0x890]
+ mov rsi, gword ptr [rbp-0x8A0]
call CORINFO_HELP_CHECKED_ASSIGN_REF
lea rdi, bword ptr [r15+0x30]
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
mov rdi, qword ptr [rax+0xB8]
mov qword ptr [r15+0x94], rdi
- mov rcx, gword ptr [rbp-0x898]
+ mov rcx, gword ptr [rbp-0x8A8]
test rcx, rcx
setne dl
movzx rdx, dl
mov dword ptr [rbp-0xF4], edx
test edx, edx
je SHORT G_M53340_IG124
;; size=101 bbWeight=4 PerfScore 160.00
G_M53340_IG123:
lea rdi, bword ptr [r15+0x40]
mov rsi, rcx
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r13
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [rax]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
;; size=37 bbWeight=2 PerfScore 13.00
G_M53340_IG124:
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
cmp byte ptr [rax+0x9C], 0
jne G_M53340_IG137
;; size=20 bbWeight=4 PerfScore 20.00
G_M53340_IG125:
cmp byte ptr [rbp-0xC4], 0
je G_M53340_IG134
cmp byte ptr [rbp-0xC0], 5
jne SHORT G_M53340_IG126
lea rdi, [rbp-0xE8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=41 bbWeight=2 PerfScore 19.50
G_M53340_IG126:
movzx rdi, byte ptr [rbp-0xC0]
mov eax, edi
cmp eax, 1
je SHORT G_M53340_IG127
cmp eax, 3
jne G_M53340_IG139
;; size=24 bbWeight=2 PerfScore 7.50
G_M53340_IG127:
mov eax, dword ptr [rbp-0x90]
mov ecx, eax
cmp edi, 1
je SHORT G_M53340_IG128
cmp edi, 3
jne SHORT G_M53340_IG129
;; size=18 bbWeight=2 PerfScore 7.50
G_M53340_IG128:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG129:
- mov dword ptr [rbp-0x824], ecx
+ mov dword ptr [rbp-0x834], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M53340_IG130:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbp-0x90]
mov edi, ecx
movzx rsi, byte ptr [rbp-0xC0]
cmp esi, 1
je SHORT G_M53340_IG132
;; size=40 bbWeight=16 PerfScore 116.00
G_M53340_IG131:
cmp esi, 3
jne SHORT G_M53340_IG133
;; size=5 bbWeight=8 PerfScore 10.00
G_M53340_IG132:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M53340_IG133:
- mov ecx, dword ptr [rbp-0x824]
+ mov ecx, dword ptr [rbp-0x834]
cmp ecx, edi
jl SHORT G_M53340_IG130
jmp G_M53340_IG139
;; size=15 bbWeight=16 PerfScore 68.00
G_M53340_IG134:
- lea rdi, bword ptr [rbp-0x820]
+ lea rdi, bword ptr [rbp-0x830]
lea rsi, bword ptr [rbp-0xE8]
mov ecx, 24
rep movsq
mov esi, dword ptr [rbp-0x90]
mov eax, esi
movzx rdi, byte ptr [rbp-0xC0]
cmp edi, 1
je SHORT G_M53340_IG135
cmp edi, 3
jne SHORT G_M53340_IG136
;; size=48 bbWeight=2 PerfScore 62.00
G_M53340_IG135:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M53340_IG136:
lea rdi, [rbp-0xE8]
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M53340_IG139
lea rdi, bword ptr [rbp-0xE8]
- lea rsi, bword ptr [rbp-0x820]
+ lea rsi, bword ptr [rbp-0x830]
mov ecx, 24
rep movsq
jmp SHORT G_M53340_IG139
;; size=49 bbWeight=2 PerfScore 67.00
G_M53340_IG137:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0xF4], 0
jne SHORT G_M53340_IG138
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M53340_IG139
;; size=60 bbWeight=2 PerfScore 35.50
G_M53340_IG138:
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=32 bbWeight=2 PerfScore 10.50
G_M53340_IG139:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
xor rsi, rsi
mov gword ptr [rdi], rsi
;; size=15 bbWeight=4 PerfScore 10.00
G_M53340_IG140:
mov gword ptr [rdi+0x08], rsi
;; size=4 bbWeight=4 PerfScore 4.00
G_M53340_IG141:
mov gword ptr [rdi+0x10], rsi
mov byte ptr [rdi+0x58], 0
- mov rdi, qword ptr [rbp-0x858]
+ mov rdi, qword ptr [rbp-0x868]
inc edi
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp edi, dword ptr [rcx+0x30]
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rdx, rdi
jl G_M53340_IG152
;; size=43 bbWeight=4 PerfScore 38.00
G_M53340_IG142:
- mov rbx, gword ptr [rbp-0x870]
- mov r12, bword ptr [rbp-0x868]
- mov rax, gword ptr [rbp-0x878]
+ mov rbx, gword ptr [rbp-0x880]
+ mov r12, bword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
mov r14, gword ptr [rax+0x10]
xor rdi, rdi
mov gword ptr [rax+0x10], rdi
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=93 bbWeight=0.50 PerfScore 8.88
G_M53340_IG143:
mov rcx, gword ptr [rbx+0x40]
test rcx, rcx
je SHORT G_M53340_IG144
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M53340_IG144:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rcx, r14
- mov bword ptr [rbp-0x960], rcx
+ mov bword ptr [rbp-0x970], rcx
cmp dword ptr [rbx+0xF4], 0
jle SHORT G_M53340_IG145
mov rdi, gword ptr [rcx+0x48]
mov rdx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rdx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne G_M53340_IG151
- mov rsi, bword ptr [rbp-0x960]
+ mov rsi, bword ptr [rbp-0x970]
mov rsi, gword ptr [rsi+0x48]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=85 bbWeight=0.50 PerfScore 11.62
G_M53340_IG145:
mov rsi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [r13], rsi
je SHORT G_M53340_IG147
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M53340_IG146:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int32
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=32 bbWeight=0.25 PerfScore 1.19
G_M53340_IG147:
mov esi, dword ptr [r13+0x08]
mov dword ptr [r12], esi
cmp gword ptr [r15+0x68], 0
je SHORT G_M53340_IG148
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
cmp dword ptr [rdi], edi
call [rcx]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=43 bbWeight=0.50 PerfScore 8.25
G_M53340_IG148:
cmp gword ptr [rax+0x28], 0
je SHORT G_M53340_IG149
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
cmp dword ptr [rdi], edi
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
;; size=28 bbWeight=0.50 PerfScore 6.25
G_M53340_IG149:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M53340_IG150:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M53340_IG151:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
jmp G_M53340_IG145
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M53340_IG152:
- mov rcx, gword ptr [rbp-0x880]
+ mov rcx, gword ptr [rbp-0x890]
jmp G_M53340_IG111
;; size=12 bbWeight=2 PerfScore 6.00
G_M53340_IG153:
cmp byte ptr [r15+0x8A], 0
jne SHORT G_M53340_IG154
cmp byte ptr [rbx+0x28], 1
jne G_M53340_IG218
mov byte ptr [r15+0x8A], 1
;; size=28 bbWeight=0.50 PerfScore 4.50
G_M53340_IG154:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M53340_IG157
cmp byte ptr [r15+0x8A], 2
jae SHORT G_M53340_IG157
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, rbx
mov rcx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
call [r8]System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
test eax, eax
je G_M53340_IG171
cmp byte ptr [r15+0x8D], 4
jne SHORT G_M53340_IG156
;; size=70 bbWeight=0.50 PerfScore 9.25
G_M53340_IG155:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ResolveReferenceId[int](byref):int
call [rax]System.Text.Json.JsonSerializer:ResolveReferenceId[int](byref):int
mov dword ptr [r12], eax
jmp G_M53340_IG149
;; size=24 bbWeight=0.50 PerfScore 3.25
G_M53340_IG156:
mov byte ptr [r15+0x8A], 2
- mov rax, gword ptr [rbp-0x860]
- mov r10, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=22 bbWeight=0.50 PerfScore 1.50
G_M53340_IG157:
test byte ptr [r15+0x8D], 8
je G_M53340_IG161
cmp byte ptr [r15+0x8E], 1
je G_M53340_IG161
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
call [r8]System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
- mov gword ptr [rbp-0x8A0], rax
+ mov gword ptr [rbp-0x8B0], rax
test rax, rax
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
je G_M53340_IG160
mov rdi, rax
mov rcx, qword ptr [rax]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov rdx, rax
lea r9, [rbp-0x100]
mov rsi, rbx
- mov rdi, gword ptr [rbp-0x8A0]
+ mov rdi, gword ptr [rbp-0x8B0]
mov rcx, r14
mov r8, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
call [rax]System.Text.Json.Serialization.JsonConverter:OnTryReadAsObject(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
mov r13d, eax
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [rsi], rdi
je SHORT G_M53340_IG159
;; size=153 bbWeight=0.50 PerfScore 19.25
G_M53340_IG158:
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int32
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=29 bbWeight=0.25 PerfScore 1.12
G_M53340_IG159:
mov rdi, gword ptr [rbp-0x100]
mov edi, dword ptr [rdi+0x08]
mov dword ptr [r12], edi
lea rdi, bword ptr [r15+0x58]
lea r14, bword ptr [r15+0x60]
mov rsi, gword ptr [r15+0x60]
mov rbx, gword ptr [r15+0x58]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r14
mov rsi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
add r15, 48
xor edi, edi
mov esi, 2
test r13d, r13d
cmove edi, esi
mov byte ptr [r15+0x5E], dil
mov eax, r13d
jmp G_M53340_IG189
;; size=75 bbWeight=0.50 PerfScore 8.00
G_M53340_IG160:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M53340_IG161:
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M53340_IG162
xor rdi, rdi
jmp SHORT G_M53340_IG163
;; size=14 bbWeight=0.50 PerfScore 3.12
G_M53340_IG162:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M53340_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M53340_IG163:
test rdi, rdi
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
je G_M53340_IG167
mov rsi, r15
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rdx]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M53340_IG166
mov rsi, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M53340_IG164
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=66 bbWeight=0.50 PerfScore 9.12
G_M53340_IG164:
mov byte ptr [r15+0x8A], 4
lea rdi, bword ptr [r15+0x30]
mov rcx, rdi
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
- mov bword ptr [rbp-0x938], rcx
+ mov bword ptr [rbp-0x948], rcx
jle SHORT G_M53340_IG165
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x940], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x950], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x938]
+ mov rdi, bword ptr [rbp-0x948]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x940]
+ mov rsi, gword ptr [rbp-0x950]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M53340_IG04
;; size=125 bbWeight=0.50 PerfScore 11.62
G_M53340_IG165:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M53340_IG04
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M53340_IG166:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M53340_IG167:
cmp byte ptr [r15+0x8A], 3
jae G_M53340_IG173
cmp byte ptr [r15+0x8B], 0
je SHORT G_M53340_IG168
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
call [rax]System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=46 bbWeight=0.50 PerfScore 6.25
G_M53340_IG168:
cmp byte ptr [r15+0x8D], 4
je G_M53340_IG155
mov rax, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x948], rax
+ mov gword ptr [rbp-0x958], rax
cmp byte ptr [rax+0x103], 0
jne G_M53340_IG219
mov edi, dword ptr [rax+0xF0]
mov rdx, gword ptr [rax+0x08]
mov rdx, gword ptr [rdx+0x10]
cmp edi, dword ptr [rdx+0x10]
jne G_M53340_IG220
lea rdi, bword ptr [r15+0x30]
mov rdx, rdi
- mov bword ptr [rbp-0x950], rdx
+ mov bword ptr [rbp-0x960], rdx
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M53340_IG169
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x958], rax
- mov rcx, gword ptr [rbp-0x948]
+ mov gword ptr [rbp-0x968], rax
+ mov rcx, gword ptr [rbp-0x958]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x950]
+ mov rdi, bword ptr [rbp-0x960]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x958]
+ mov rsi, gword ptr [rbp-0x968]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=159 bbWeight=0.50 PerfScore 19.62
G_M53340_IG169:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
call [rax+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
mov byte ptr [r15+0x8A], 3
;; size=34 bbWeight=0.50 PerfScore 5.00
G_M53340_IG170:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
test eax, eax
jne SHORT G_M53340_IG174
;; size=28 bbWeight=0.50 PerfScore 2.75
G_M53340_IG171:
xor eax, eax
mov dword ptr [r12], eax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M53340_IG172:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M53340_IG173:
jmp SHORT G_M53340_IG170
;; size=2 bbWeight=0.25 PerfScore 0.50
G_M53340_IG174:
lea rdx, bword ptr [r15+0x30]
mov rbx, rdx
mov rsi, rbx
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
mov r13, rax
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:CreateObject(byref):System.Object:this
mov r13, rax
mov rsi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [r13], rsi
je SHORT G_M53340_IG176
;; size=47 bbWeight=0.50 PerfScore 6.50
G_M53340_IG175:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int32
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M53340_IG176:
mov rdi, 0xD1FFAB1E ; System.Int32
call CORINFO_HELP_NEWSFAST
mov edi, dword ptr [r13+0x08]
mov dword ptr [rax+0x08], edi
mov r13, rax
test byte ptr [r15+0x8D], 2
je SHORT G_M53340_IG177
mov rdi, gword ptr [r15+0x08]
mov rsi, gword ptr [r15+0x10]
mov rdx, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Text.Json.Serialization.ReferenceResolver:AddReference(System.String,System.Object):this
xor rsi, rsi
mov gword ptr [r15+0x10], rsi
;; size=62 bbWeight=0.50 PerfScore 10.50
G_M53340_IG177:
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M53340_IG178
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M53340_IG178:
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp dword ptr [rcx+0x30], 0
jle G_M53340_IG182
xor r8d, r8d
;; size=20 bbWeight=0.50 PerfScore 2.62
G_M53340_IG179:
mov rsi, gword ptr [rcx+0x18]
mov rdx, rsi
cmp r8d, dword ptr [rdx+0x08]
jae G_M53340_IG192
lea rdi, [r8+2*r8]
mov r9, gword ptr [rdx+8*rdi+0x10]
- mov gword ptr [rbp-0x8A8], r9
- mov qword ptr [rbp-0x850], r8
+ mov gword ptr [rbp-0x8B8], r9
+ mov qword ptr [rbp-0x860], r8
cmp r8d, dword ptr [rsi+0x08]
jae G_M53340_IG192
lea rsi, bword ptr [rsi+8*rdi+0x10]
mov r10, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8B0], r10
+ mov gword ptr [rbp-0x8C0], r10
mov r11, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x8B8], r11
+ mov gword ptr [rbp-0x8C8], r11
test r11, r11
jne G_M53340_IG183
;; size=86 bbWeight=4 PerfScore 92.00
G_M53340_IG180:
test r10, r10
jne SHORT G_M53340_IG181
movsx rsi, byte ptr [r9+0x97]
;; size=13 bbWeight=2 PerfScore 10.50
G_M53340_IG181:
mov r11, gword ptr [r9+0x28]
mov rsi, r13
mov rdx, r10
mov rdi, gword ptr [r11+0x08]
call [r11+0x18]System.Action`2[System.__Canon,System.__Canon]:Invoke(System.__Canon,System.__Canon):this
mov rdi, rbx
- mov rax, gword ptr [rbp-0x8A8]
+ mov rax, gword ptr [rbp-0x8B8]
cmp byte ptr [rax+0x95], 0
je G_M53340_IG187
mov rdi, gword ptr [rdi+0x48]
mov ecx, dword ptr [rax+0x8C]
cmp ecx, dword ptr [rdi+0x10]
jae G_M53340_IG221
mov eax, 1
shlx esi, eax, ecx
mov rdx, gword ptr [rdi+0x08]
mov eax, ecx
sar eax, 5
cmp eax, dword ptr [rdx+0x08]
jae G_M53340_IG192
sar ecx, 5
mov eax, ecx
lea rdx, bword ptr [rdx+4*rax+0x10]
or dword ptr [rdx], esi
inc dword ptr [rdi+0x14]
jmp G_M53340_IG187
;; size=108 bbWeight=2 PerfScore 76.00
G_M53340_IG182:
- mov bword ptr [rbp-0x9A8], rbx
+ mov bword ptr [rbp-0x9C0], rbx
mov rax, rcx
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M53340_IG143
;; size=22 bbWeight=0.25 PerfScore 1.06
G_M53340_IG183:
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
mov rdi, r13
mov rsi, r9
mov rdx, r14
mov r12, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [r12]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
- mov rdi, gword ptr [rbp-0x8A8]
+ mov rdi, gword ptr [rbp-0x8B8]
mov rsi, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x28]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:GetValueAsObject(System.Object):System.Object:this
mov r12, rax
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFINTERFACE
call [rax]CORINFO_HELP_ISINSTANCEOFINTERFACE
- mov gword ptr [rbp-0x8C0], rax
+ mov gword ptr [rbp-0x8D0], rax
test rax, rax
je SHORT G_M53340_IG186
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
mov rsi, 0xD1FFAB1E ; System.Text.Json.JsonElement
- mov r12, gword ptr [rbp-0x8B0]
+ mov r12, gword ptr [rbp-0x8C0]
cmp qword ptr [r12], rsi
je SHORT G_M53340_IG185
;; size=120 bbWeight=2 PerfScore 51.50
G_M53340_IG184:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Text.Json.JsonElement
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
;; size=32 bbWeight=1 PerfScore 4.75
G_M53340_IG185:
mov rdx, gword ptr [r12+0x08]
mov rcx, qword ptr [r12+0x10]
mov rdi, rax
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
jmp SHORT G_M53340_IG187
;; size=42 bbWeight=2 PerfScore 23.00
G_M53340_IG186:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Object]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTINTERFACE
call [rax]CORINFO_HELP_CHKCASTINTERFACE
mov rdi, rax
- mov rdx, gword ptr [rbp-0x8B0]
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rdx, gword ptr [rbp-0x8C0]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
;; size=62 bbWeight=2 PerfScore 20.50
G_M53340_IG187:
- mov rdi, qword ptr [rbp-0x850]
+ mov rdi, qword ptr [rbp-0x860]
inc edi
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp edi, dword ptr [rax+0x30]
mov rcx, rax
mov r8, rdi
jl G_M53340_IG179
;; size=31 bbWeight=4 PerfScore 27.00
G_M53340_IG188:
mov r14, gword ptr [rcx+0x18]
xor rdi, rdi
mov gword ptr [rcx+0x18], rdi
mov rdi, 0xD1FFAB1E
mov esi, 128
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
- mov bword ptr [rbp-0x9A8], rbx
- mov rax, gword ptr [rbp-0x878]
- mov rbx, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rbx
+ mov rax, gword ptr [rbp-0x888]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M53340_IG143
;; size=91 bbWeight=0.50 PerfScore 9.38
G_M53340_IG189:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M53340_IG190:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M53340_IG191:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M53340_IG192:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M53340_IG193:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M53340_IG194
mov rax, gword ptr [rdi+0x28]
jmp SHORT G_M53340_IG195
;; size=22 bbWeight=0 PerfScore 0.00
G_M53340_IG194:
mov rax, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M53340_IG195:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rax+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M53340_IG198
mov r15, r14
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M53340_IG196
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M53340_IG197
;; size=97 bbWeight=0 PerfScore 0.00
G_M53340_IG196:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M53340_IG197:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M53340_IG198:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M53340_IG199
lea rdi, bword ptr [rbp-0x420]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x420]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M53340_IG212
;; size=67 bbWeight=0 PerfScore 0.00
G_M53340_IG199:
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M53340_IG200
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M53340_IG201
;; size=47 bbWeight=0 PerfScore 0.00
G_M53340_IG200:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M53340_IG201:
lea rdi, bword ptr [r14+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M53340_IG212
;; size=14 bbWeight=0 PerfScore 0.00
G_M53340_IG202:
mov rsi, gword ptr [rdi+0xB0]
mov rdi, gword ptr [rsi+0x20]
- mov rbx, gword ptr [rbp-0x918]
+ mov rbx, gword ptr [rbp-0x928]
mov rsi, gword ptr [rbx+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=38 bbWeight=0 PerfScore 0.00
G_M53340_IG203:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M53340_IG204
mov rdx, gword ptr [rdi+0x28]
jmp SHORT G_M53340_IG205
;; size=22 bbWeight=0 PerfScore 0.00
G_M53340_IG204:
mov rdx, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M53340_IG205:
- mov rdi, bword ptr [rbp-0x990]
- mov esi, dword ptr [rbp-0x83C]
+ mov rdi, bword ptr [rbp-0x9A0]
+ mov esi, dword ptr [rbp-0x84C]
mov rdx, gword ptr [rdx+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M53340_IG208
mov r15, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M53340_IG206
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M53340_IG207
;; size=90 bbWeight=0 PerfScore 0.00
G_M53340_IG206:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M53340_IG207:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M53340_IG208:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M53340_IG209
lea rdi, bword ptr [rbp-0x678]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x678]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp SHORT G_M53340_IG212
;; size=64 bbWeight=0 PerfScore 0.00
G_M53340_IG209:
mov rbx, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M53340_IG210
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M53340_IG211
;; size=50 bbWeight=0 PerfScore 0.00
G_M53340_IG210:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M53340_IG211:
lea rdi, bword ptr [rbx+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=9 bbWeight=0 PerfScore 0.00
G_M53340_IG212:
mov edi, 0x1979
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=51 bbWeight=0 PerfScore 0.00
G_M53340_IG213:
mov edi, 9
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException(int)
call [rax]System.ThrowHelper:ThrowArgumentException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M53340_IG214:
mov rdi, r10
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
call [rax]System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
int3
;; size=16 bbWeight=0 PerfScore 0.00
G_M53340_IG215:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M53340_IG216:
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M53340_IG217:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M53340_IG218:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M53340_IG219:
mov rdi, gword ptr [rax+0xB0]
mov rdi, gword ptr [rdi+0x20]
mov rsi, gword ptr [rax+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=31 bbWeight=0 PerfScore 0.00
G_M53340_IG220:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M53340_IG221:
mov edi, ecx
mov rax, 0xD1FFAB1E ; code for System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
call [rax]System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
int3
;; size=15 bbWeight=0 PerfScore 0.00
-; Total bytes of code 8438, prolog size 93, PerfScore 4050.73, instruction count 1813, allocated bytes for code 8438 (MethodHash=6eec2fa3) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)
+; Total bytes of code 8300, prolog size 76, PerfScore 3833.48, instruction count 1773, allocated bytes for code 8300 (MethodHash=6eec2fa3) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[int]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)
-138 (-1.63 % of base) - System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
; Assembly listing for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):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; 173 single block inlinees; 71 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T36] ( 17, 15.50) ref -> r13 this class-hnd single-def <System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]>
; V01 arg1 [V01,T00] ( 72,238.50) byref -> rbx single-def
-; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x860] class-hnd single-def <System.Type>
+; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x870] class-hnd single-def <System.Type>
; V03 arg3 [V03,T18] ( 14, 24.50) ref -> r14 class-hnd single-def <System.Text.Json.JsonSerializerOptions>
; V04 arg4 [V04,T01] ( 81, 86 ) byref -> r15 single-def
-; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x868] single-def
-; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x870] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x878] single-def
+; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x880] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V07 loc1 [V07,T39] ( 15, 16.25) ref -> r13 class-hnd <System.Object>
-; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x878] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
+; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x888] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
;* V09 loc3 [V09 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
;* V10 loc4 [V10 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V11 loc5 [V11,T67] ( 9, 10.75) ref -> r13 class-hnd single-def <System.Object>
; V12 loc6 [V12 ] ( 17, 78 ) struct (192) [rbp-0xE8] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.Json.Utf8JsonReader>
-; V13 loc7 [V13,T54] ( 4, 12.50) ref -> [rbp-0x880] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V13 loc7 [V13,T55] ( 4, 12.50) ref -> [rbp-0x890] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V14 loc8 [V14,T229] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V15 loc9 [V15,T238] ( 0, 0 ) int -> zero-ref
-; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x888] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V17 loc11 [V17,T31] ( 9, 18 ) long -> [rbp-0xF0] spill-single-def
-; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x890] class-hnd spill-single-def <ubyte[]>
-; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.String>
+; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <ubyte[]>
+; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.String>
; V20 loc14 [V20,T75] ( 3, 10 ) ubyte -> [rbp-0xF4] spill-single-def
-; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
+; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
; V22 loc16 [V22,T222] ( 3, 1.50) ubyte -> r13
; V23 loc17 [V23 ] ( 4, 1.75) ref -> [rbp-0x100] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object>
; V24 loc18 [V24,T230] ( 2, 1 ) ref -> rsi class-hnd single-def <System.Object>
; V25 loc19 [V25,T231] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String][]>
;* V26 loc20 [V26,T239] ( 0, 0 ) int -> zero-ref
-; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Object>
-; V29 loc23 [V29,T56] ( 4, 12 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.String>
+; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Object>
+; V29 loc23 [V29,T57] ( 4, 12 ) ref -> [rbp-0x8C8] class-hnd spill-single-def <System.String>
;* V30 loc24 [V30 ] ( 0, 0 ) long -> zero-ref ld-addr-op
; V31 loc25 [V31,T115] ( 3, 6 ) ref -> r12 class-hnd <System.Object>
-; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
+; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8D0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
; V33 OutArgs [V33 ] ( 1, 1 ) struct (80) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V34 tmp1 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V35 tmp2 [V35 ] ( 0, 0 ) ref -> zero-ref single-def
; V36 tmp3 [V36,T223] ( 2, 1 ) int -> rax
; V37 tmp4 [V37,T186] ( 4, 3.50) ref -> r13 single-def "inline UNBOX clone1"
; V38 tmp5 [V38,T191] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" <System.Int64>
; V39 tmp6 [V39,T160] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V40 tmp7 [V40 ] ( 0, 0 ) ref -> zero-ref single-def
; V41 tmp8 [V41,T161] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V42 tmp9 [V42 ] ( 0, 0 ) ref -> zero-ref single-def
; V43 tmp10 [V43,T162] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V44 tmp11 [V44 ] ( 0, 0 ) ref -> zero-ref single-def
;* V45 tmp12 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V46 tmp13 [V46 ] ( 0, 0 ) ref -> zero-ref single-def
; V47 tmp14 [V47,T224] ( 2, 1 ) int -> rax
; V48 tmp15 [V48,T187] ( 4, 3.50) ref -> rbx single-def "inline UNBOX clone1"
; V49 tmp16 [V49,T192] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Single-def Box Helper" <System.Int64>
; V50 tmp17 [V50,T163] ( 4, 4 ) ref -> rax class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V51 tmp18 [V51 ] ( 0, 0 ) ref -> zero-ref single-def
; V52 tmp19 [V52 ] ( 3, 12 ) struct (192) [rbp-0x1C0] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V53 tmp20 [V53 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
; V54 tmp21 [V54,T93] ( 3, 8 ) struct (192) [rbp-0x280] do-not-enreg[S] must-init <System.Text.Json.Utf8JsonReader>
;* V55 tmp22 [V55 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
; V56 tmp23 [V56 ] ( 3, 12 ) struct (192) [rbp-0x340] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V57 tmp24 [V57 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Buffers.ReadOnlySequence`1[ubyte]>
; V58 tmp25 [V58,T206] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V59 tmp26 [V59,T164] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V60 tmp27 [V60 ] ( 0, 0 ) ref -> zero-ref single-def
;* V61 tmp28 [V61 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V62 tmp29 [V62,T165] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V63 tmp30 [V63 ] ( 0, 0 ) ref -> zero-ref single-def
;* V64 tmp31 [V64 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V65 tmp32 [V65 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V66 tmp33 [V66 ] ( 2, 8 ) ubyte -> [rbp-0x348] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V67 tmp34 [V67,T50] ( 5, 14 ) ref -> [rbp-0x8C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8D0] spill-single-def "Inlining Arg"
-; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8D8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V67 tmp34 [V67,T51] ( 5, 14 ) ref -> [rbp-0x8D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8E0] spill-single-def "Inlining Arg"
+; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8E8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V70 tmp37 [V70 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V71 tmp38 [V71 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V72 tmp39 [V72 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V73 tmp40 [V73 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V74 tmp41 [V74 ] ( 2, 4 ) struct (24) [rbp-0x360] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V75 tmp42 [V75 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V76 tmp43 [V76 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V77 tmp44 [V77 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V78 tmp45 [V78,T40] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V79 tmp46 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V80 tmp47 [V80,T117] ( 3, 6 ) ref -> rcx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V81 tmp48 [V81,T41] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V82 tmp49 [V82 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V83 tmp50 [V83,T242] ( 3, 0 ) ref -> rax class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V84 tmp51 [V84,T240] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V85 tmp52 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V86 tmp53 [V86,T252] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V87 tmp54 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V88 tmp55 [V88,T243] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V89 tmp56 [V89,T244] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V90 tmp57 [V90,T253] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V91 tmp58 [V91 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V92 tmp59 [V92,T266] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V93 tmp60 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V94 tmp61 [V94,T254] ( 2, 0 ) byref -> r14 "impAppendStmt"
; V95 tmp62 [V95 ] ( 2, 0 ) struct (192) [rbp-0x420] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V96 tmp63 [V96,T255] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V97 tmp64 [V97 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V98 tmp65 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V99 tmp66 [V99,T245] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V100 tmp67 [V100,T246] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V101 tmp68 [V101,T256] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V102 tmp69 [V102 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V103 tmp70 [V103,T267] ( 2, 0 ) long -> rdx "Inlining Arg"
; V104 tmp71 [V104,T65] ( 2, 12 ) ubyte -> [rbp-0x424] spill-single-def "Inlining Arg"
;* V105 tmp72 [V105 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V106 tmp73 [V106 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V107 tmp74 [V107,T168] ( 2, 4 ) struct (192) [rbp-0x4E8] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V108 tmp75 [V108 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V109 tmp76 [V109,T124] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V110 tmp77 [V110,T169] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V111 tmp78 [V111,T33] ( 2, 18 ) int -> [rbp-0x4EC] spill-single-def "Inline stloc first use temp"
;* V112 tmp79 [V112 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V113 tmp80 [V113 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V114 tmp81 [V114 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V115 tmp82 [V115,T125] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V116 tmp83 [V116,T126] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V117 tmp84 [V117,T170] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V118 tmp85 [V118 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V119 tmp86 [V119,T06] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V120 tmp87 [V120,T07] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V121 tmp88 [V121,T47] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V121 tmp88 [V121,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V122 tmp89 [V122 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V123 tmp90 [V123,T127] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V124 tmp91 [V124,T128] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V125 tmp92 [V125,T171] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V126 tmp93 [V126 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V127 tmp94 [V127,T02] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V128 tmp95 [V128,T194] ( 3, 3 ) byref -> rbx single-def "Inlining Arg"
;* V129 tmp96 [V129 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V130 tmp97 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
; V131 tmp98 [V131,T156] ( 5, 5 ) byref -> rsi single-def "Inlining Arg"
; V132 tmp99 [V132,T225] ( 3, 1.50) long -> rdi "Inline return value spill temp"
; V133 tmp100 [V133,T219] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8E0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
+; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
; V135 tmp102 [V135,T226] ( 3, 1.50) int -> [rbp-0x4F0] spill-single-def "Inline stloc first use temp"
; V136 tmp103 [V136,T227] ( 3, 1.50) int -> [rbp-0x4F4] spill-single-def "Inline stloc first use temp"
-; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8E8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8F8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V138 tmp105 [V138 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V139 tmp106 [V139 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V140 tmp107 [V140 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V141 tmp108 [V141 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V142 tmp109 [V142 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V143 tmp110 [V143,T107] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V144 tmp111 [V144 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V145 tmp112 [V145 ] ( 4, 12.50) ref -> [rbp-0x500] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
; V146 tmp113 [V146 ] ( 1, 4 ) ubyte -> [rbp-0x508] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x8F8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
+; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x900] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x908] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
; V149 tmp116 [V149,T88] ( 4, 8 ) int -> [rbp-0x50C] spill-single-def "Inline stloc first use temp"
-; V150 tmp117 [V150,T57] ( 3, 12 ) ref -> [rbp-0x900] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V150 tmp117 [V150,T58] ( 3, 12 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V151 tmp118 [V151,T108] ( 2, 8 ) struct (56) [rbp-0x548] do-not-enreg[HS] must-init hidden-struct-arg "impAppendStmt" <System.Text.Json.JsonReaderState>
; V152 tmp119 [V152,T30] ( 5, 20 ) struct (88) [rbp-0x5A0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]>
-; V153 tmp120 [V153,T55] ( 6, 12 ) ref -> [rbp-0x908] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
-; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V153 tmp120 [V153,T56] ( 6, 12 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x920] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V155 tmp122 [V155,T98] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]>
;* V156 tmp123 [V156 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x928] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V158 tmp125 [V158 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V159 tmp126 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V160 tmp127 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V161 tmp128 [V161 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V162 tmp129 [V162 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x920] spill-single-def "Inlining Arg"
-; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x928] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x930] spill-single-def "Inlining Arg"
+; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x938] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V165 tmp132 [V165 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V166 tmp133 [V166 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V167 tmp134 [V167 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V168 tmp135 [V168 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V169 tmp136 [V169 ] ( 2, 4 ) struct (24) [rbp-0x5B8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V170 tmp137 [V170 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V171 tmp138 [V171 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V172 tmp139 [V172 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V173 tmp140 [V173,T42] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V174 tmp141 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V175 tmp142 [V175,T118] ( 3, 6 ) ref -> r10 class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V176 tmp143 [V176,T43] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V177 tmp144 [V177 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V178 tmp145 [V178,T247] ( 3, 0 ) ref -> rdx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V179 tmp146 [V179,T241] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V180 tmp147 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V181 tmp148 [V181,T257] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V182 tmp149 [V182 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V183 tmp150 [V183,T248] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V184 tmp151 [V184,T249] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V185 tmp152 [V185,T258] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V186 tmp153 [V186 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V187 tmp154 [V187,T268] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V188 tmp155 [V188 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V189 tmp156 [V189,T259] ( 2, 0 ) byref -> rbx "impAppendStmt"
; V190 tmp157 [V190 ] ( 2, 0 ) struct (192) [rbp-0x678] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V191 tmp158 [V191,T260] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V192 tmp159 [V192 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V193 tmp160 [V193 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V194 tmp161 [V194,T250] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V195 tmp162 [V195,T251] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V196 tmp163 [V196,T261] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V197 tmp164 [V197 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V198 tmp165 [V198,T269] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V199 tmp166 [V199 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V200 tmp167 [V200 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V201 tmp168 [V201,T76] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V202 tmp169 [V202,T77] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V203 tmp170 [V203,T172] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V204 tmp171 [V204,T03] ( 5, 40 ) byref -> rsi "Inlining Arg"
;* V205 tmp172 [V205 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V206 tmp173 [V206,T46] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
+; V206 tmp173 [V206,T47] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
;* V207 tmp174 [V207 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V208 tmp175 [V208,T173] ( 2, 4 ) struct (192) [rbp-0x738] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V209 tmp176 [V209 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V210 tmp177 [V210,T129] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V211 tmp178 [V211,T174] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V212 tmp179 [V212,T34] ( 2, 18 ) int -> [rbp-0x73C] spill-single-def "Inline stloc first use temp"
;* V213 tmp180 [V213 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V214 tmp181 [V214 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V215 tmp182 [V215 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V216 tmp183 [V216,T130] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V217 tmp184 [V217,T131] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V218 tmp185 [V218,T175] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V219 tmp186 [V219 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V220 tmp187 [V220,T08] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V221 tmp188 [V221,T09] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V222 tmp189 [V222,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V222 tmp189 [V222,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V223 tmp190 [V223 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V224 tmp191 [V224,T132] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V225 tmp192 [V225,T133] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V226 tmp193 [V226,T176] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V227 tmp194 [V227,T16] ( 4, 32 ) byref -> rdi "Inlining Arg"
; V228 tmp195 [V228,T17] ( 4, 32 ) byref -> rsi "Inlining Arg"
;* V229 tmp196 [V229 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V230 tmp197 [V230 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonPropertyInfo]>
;* V231 tmp198 [V231 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
; V232 tmp199 [V232,T134] ( 3, 6 ) int -> rsi "Inline return value spill temp"
; V233 tmp200 [V233,T62] ( 3, 12 ) int -> rsi "Inlining Arg"
-; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x930] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V235 tmp202 [V235 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
; V236 tmp203 [V236,T135] ( 2, 4 ) int -> rdi "Inline return value spill temp"
;* V237 tmp204 [V237 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V238 tmp205 [V238,T136] ( 3, 6 ) int -> rdi "Inline stloc first use temp"
; V239 tmp206 [V239,T99] ( 2, 8 ) byref -> rdi "Inlining Arg"
-; V240 tmp207 [V240,T109] ( 2, 8 ) long -> rdx "Inlining Arg"
-; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rcx class-hnd "Inlining Arg" <ubyte[]>
-; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rdi class-hnd exact "Inlining Arg" <System.String>
+; V240 tmp207 [V240,T109] ( 2, 8 ) long -> [rbp-0x748] spill-single-def "Inlining Arg"
+; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rdi class-hnd "Inlining Arg" <ubyte[]>
+; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rsi class-hnd exact "Inlining Arg" <System.String>
;* V243 tmp210 [V243 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V244 tmp211 [V244 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V245 tmp212 [V245,T78] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V246 tmp213 [V246,T79] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V247 tmp214 [V247,T177] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V248 tmp215 [V248,T04] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V249 tmp216 [V249,T94] ( 3, 8 ) long -> registers "Inline return value spill temp"
;* V250 tmp217 [V250 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V251 tmp218 [V251 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
-; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x740] spill-single-def "Inline stloc first use temp"
+; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x74C] spill-single-def "Inline stloc first use temp"
; V253 tmp220 [V253,T96] ( 3, 8 ) int -> rbx "Inline stloc first use temp"
;* V254 tmp221 [V254,T216] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V255 tmp222 [V255 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V256 tmp223 [V256 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V257 tmp224 [V257 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V258 tmp225 [V258 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x758] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
+; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x768] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V260 tmp227 [V260 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.SequencePosition>
;* V261 tmp228 [V261 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.SequencePosition>
;* V262 tmp229 [V262 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V263 tmp230 [V263 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
; V264 tmp231 [V264,T89] ( 4, 8 ) int -> rbx "Inline stloc first use temp"
-; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x75C] spill-single-def "Inline stloc first use temp"
+; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x76C] spill-single-def "Inline stloc first use temp"
;* V266 tmp233 [V266 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.SequencePosition>
;* V267 tmp234 [V267,T217] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V268 tmp235 [V268 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
; V269 tmp236 [V269,T90] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V270 tmp237 [V270 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.SequencePosition>
;* V271 tmp238 [V271 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V272 tmp239 [V272 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V273 tmp240 [V273 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V274 tmp241 [V274 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Object>
;* V275 tmp242 [V275 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V276 tmp243 [V276 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Object>
; V277 tmp244 [V277,T110] ( 2, 8 ) int -> r10 "Inlining Arg"
;* V278 tmp245 [V278 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V279 tmp246 [V279,T45] ( 4, 16 ) int -> rsi "Inlining Arg"
+; V279 tmp246 [V279,T46] ( 4, 16 ) int -> rsi "Inlining Arg"
;* V280 tmp247 [V280 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V281 tmp248 [V281,T102] ( 2, 8 ) byref -> r10 "Inlining Arg"
; V282 tmp249 [V282,T111] ( 2, 8 ) int -> r11 "Inlining Arg"
;* V283 tmp250 [V283 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V284 tmp251 [V284 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x820] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
+; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x830] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V286 tmp253 [V286 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V287 tmp254 [V287,T138] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V288 tmp255 [V288,T179] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x824] spill-single-def "Inline stloc first use temp"
+; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x834] spill-single-def "Inline stloc first use temp"
;* V290 tmp257 [V290 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V291 tmp258 [V291 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V292 tmp259 [V292 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V293 tmp260 [V293,T139] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V294 tmp261 [V294,T140] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V295 tmp262 [V295,T180] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V296 tmp263 [V296 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V297 tmp264 [V297,T10] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V298 tmp265 [V298,T11] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V299 tmp266 [V299,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V299 tmp266 [V299,T50] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V300 tmp267 [V300 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V301 tmp268 [V301,T141] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V302 tmp269 [V302,T142] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V303 tmp270 [V303,T181] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V304 tmp271 [V304 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V305 tmp272 [V305,T05] ( 5, 40 ) byref -> rdi "Inlining Arg"
; V306 tmp273 [V306,T233] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
; V307 tmp274 [V307,T234] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V308 tmp275 [V308,T210] ( 2, 2 ) byref -> r14 single-def "impAppendStmt"
; V309 tmp276 [V309,T235] ( 2, 1 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V310 tmp277 [V310 ] ( 0, 0 ) byref -> zero-ref
; V311 tmp278 [V311,T236] ( 2, 1 ) byref -> r15 single-def
; V312 tmp279 [V312,T237] ( 2, 1 ) int -> rdi
; V313 tmp280 [V313,T207] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x938] single-def "Inlining Arg"
-; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x948] single-def "Inlining Arg"
+; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x950] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V316 tmp283 [V316 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x948] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x958] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V318 tmp285 [V318 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V319 tmp286 [V319 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V320 tmp287 [V320 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V321 tmp288 [V321 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V322 tmp289 [V322 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x950] spill-single-def "Inlining Arg"
-; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x958] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x968] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V325 tmp292 [V325 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V326 tmp293 [V326,T103] ( 2, 8 ) byref -> rdi "Inlining Arg"
; V327 tmp294 [V327,T29] ( 5, 20 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Collections.BitArray>
; V328 tmp295 [V328,T27] ( 6, 20 ) int -> rcx "Inlining Arg"
; V329 tmp296 [V329,T182] ( 2, 4 ) int -> rsi "Inline stloc first use temp"
; V330 tmp297 [V330,T119] ( 3, 6 ) byref -> rdx "Inline stloc first use temp"
-; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x970] spill-single-def "Inlining Arg"
; V332 tmp299 [V332,T202] ( 3, 3 ) int -> rax "Single return block return value"
-; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x968] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
-; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x828] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
-; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x970] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
-; V336 tmp303 [V336,T53] ( 6, 12.50) ref -> [rbp-0x978] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
-; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x82C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
-; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x830] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
+; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x978] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
+; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x838] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
+; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x980] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
+; V336 tmp303 [V336,T54] ( 6, 12.50) ref -> [rbp-0x988] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
+; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x83C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
+; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x840] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
;* V339 tmp306 [V339 ] ( 0, 0 ) byref -> zero-ref "field V53._reference (fldOffset=0x0)" P-INDEP
;* V340 tmp307 [V340 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
;* V341 tmp308 [V341 ] ( 0, 0 ) byref -> zero-ref "field V65._reference (fldOffset=0x0)" P-INDEP
;* V342 tmp309 [V342 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V343 tmp310 [V343 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V344 tmp311 [V344 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x980] "field V73._reference (fldOffset=0x0)" P-INDEP
-; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x834] "field V73._length (fldOffset=0x8)" P-INDEP
+; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x990] "field V73._reference (fldOffset=0x0)" P-INDEP
+; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x844] "field V73._length (fldOffset=0x8)" P-INDEP
; V347 tmp314 [V347,T85] ( 4, 8 ) byref -> rax "field V75._reference (fldOffset=0x0)" P-INDEP
; V348 tmp315 [V348,T91] ( 4, 8 ) int -> rcx "field V75._length (fldOffset=0x8)" P-INDEP
;* V349 tmp316 [V349 ] ( 0, 0 ) byref -> zero-ref "field V76._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp317 [V350 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
;* V351 tmp318 [V351 ] ( 0, 0 ) byref -> zero-ref "field V77._reference (fldOffset=0x0)" P-DEP
;* V352 tmp319 [V352 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-DEP
; V353 tmp320 [V353,T120] ( 3, 6 ) byref -> registers "field V79._reference (fldOffset=0x0)" P-INDEP
; V354 tmp321 [V354,T143] ( 3, 6 ) int -> registers "field V79._length (fldOffset=0x8)" P-INDEP
;* V355 tmp322 [V355 ] ( 0, 0 ) byref -> zero-ref "field V85._reference (fldOffset=0x0)" P-INDEP
;* V356 tmp323 [V356 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V357 tmp324 [V357 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp325 [V358 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
;* V359 tmp326 [V359 ] ( 0, 0 ) ref -> zero-ref "field V114._array (fldOffset=0x0)" P-INDEP
;* V360 tmp327 [V360 ] ( 0, 0 ) long -> zero-ref "field V114._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V361 tmp328 [V361,T144] ( 3, 6 ) int -> rax "field V114._currentDepth (fldOffset=0x10)" P-INDEP
;* V362 tmp329 [V362 ] ( 0, 0 ) ref -> zero-ref "field V118._array (fldOffset=0x0)" P-INDEP
;* V363 tmp330 [V363 ] ( 0, 0 ) long -> zero-ref "field V118._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V364 tmp331 [V364,T12] ( 3, 40 ) int -> rcx "field V118._currentDepth (fldOffset=0x10)" P-INDEP
;* V365 tmp332 [V365 ] ( 0, 0 ) ref -> zero-ref "field V122._array (fldOffset=0x0)" P-INDEP
;* V366 tmp333 [V366 ] ( 0, 0 ) long -> zero-ref "field V122._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V367 tmp334 [V367,T145] ( 3, 6 ) int -> rsi "field V122._currentDepth (fldOffset=0x10)" P-INDEP
; V368 tmp335 [V368,T221] ( 3, 1.50) byref -> rax "field V129._reference (fldOffset=0x0)" P-INDEP
; V369 tmp336 [V369,T228] ( 3, 1.50) int -> rdx "field V129._length (fldOffset=0x8)" P-INDEP
;* V370 tmp337 [V370 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
;* V371 tmp338 [V371 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
;* V372 tmp339 [V372 ] ( 0, 0 ) byref -> zero-ref "field V144._reference (fldOffset=0x0)" P-INDEP
;* V373 tmp340 [V373 ] ( 0, 0 ) int -> zero-ref "field V144._length (fldOffset=0x8)" P-INDEP
-; V374 tmp341 [V374,T51] ( 4, 14 ) byref -> [rbp-0x988] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
-; V375 tmp342 [V375,T52] ( 4, 14 ) int -> [rbp-0x838] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
-; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x990] "field V168._reference (fldOffset=0x0)" P-INDEP
-; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x83C] "field V168._length (fldOffset=0x8)" P-INDEP
+; V374 tmp341 [V374,T52] ( 4, 14 ) byref -> [rbp-0x998] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
+; V375 tmp342 [V375,T53] ( 4, 14 ) int -> [rbp-0x848] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
+; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x9A0] "field V168._reference (fldOffset=0x0)" P-INDEP
+; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x84C] "field V168._length (fldOffset=0x8)" P-INDEP
; V378 tmp345 [V378,T86] ( 4, 8 ) byref -> rax "field V170._reference (fldOffset=0x0)" P-INDEP
; V379 tmp346 [V379,T92] ( 4, 8 ) int -> rcx "field V170._length (fldOffset=0x8)" P-INDEP
;* V380 tmp347 [V380 ] ( 0, 0 ) byref -> zero-ref "field V171._reference (fldOffset=0x0)" P-INDEP
;* V381 tmp348 [V381 ] ( 0, 0 ) int -> zero-ref "field V171._length (fldOffset=0x8)" P-INDEP
;* V382 tmp349 [V382 ] ( 0, 0 ) byref -> zero-ref "field V172._reference (fldOffset=0x0)" P-DEP
;* V383 tmp350 [V383 ] ( 0, 0 ) int -> zero-ref "field V172._length (fldOffset=0x8)" P-DEP
; V384 tmp351 [V384,T121] ( 3, 6 ) byref -> registers "field V174._reference (fldOffset=0x0)" P-INDEP
; V385 tmp352 [V385,T146] ( 3, 6 ) int -> registers "field V174._length (fldOffset=0x8)" P-INDEP
;* V386 tmp353 [V386 ] ( 0, 0 ) byref -> zero-ref "field V180._reference (fldOffset=0x0)" P-INDEP
;* V387 tmp354 [V387 ] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
;* V388 tmp355 [V388 ] ( 0, 0 ) byref -> zero-ref "field V188._reference (fldOffset=0x0)" P-INDEP
;* V389 tmp356 [V389 ] ( 0, 0 ) int -> zero-ref "field V188._length (fldOffset=0x8)" P-INDEP
;* V390 tmp357 [V390 ] ( 0, 0 ) ref -> zero-ref "field V200._array (fldOffset=0x0)" P-INDEP
;* V391 tmp358 [V391 ] ( 0, 0 ) long -> zero-ref "field V200._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V392 tmp359 [V392,T80] ( 3, 10 ) int -> rsi "field V200._currentDepth (fldOffset=0x10)" P-INDEP
;* V393 tmp360 [V393 ] ( 0, 0 ) ref -> zero-ref "field V215._array (fldOffset=0x0)" P-INDEP
;* V394 tmp361 [V394 ] ( 0, 0 ) long -> zero-ref "field V215._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V395 tmp362 [V395,T147] ( 3, 6 ) int -> rax "field V215._currentDepth (fldOffset=0x10)" P-INDEP
;* V396 tmp363 [V396 ] ( 0, 0 ) ref -> zero-ref "field V219._array (fldOffset=0x0)" P-INDEP
;* V397 tmp364 [V397 ] ( 0, 0 ) long -> zero-ref "field V219._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V398 tmp365 [V398,T13] ( 3, 40 ) int -> rcx "field V219._currentDepth (fldOffset=0x10)" P-INDEP
;* V399 tmp366 [V399 ] ( 0, 0 ) ref -> zero-ref "field V223._array (fldOffset=0x0)" P-INDEP
;* V400 tmp367 [V400 ] ( 0, 0 ) long -> zero-ref "field V223._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V401 tmp368 [V401,T148] ( 3, 6 ) int -> rsi "field V223._currentDepth (fldOffset=0x10)" P-INDEP
;* V402 tmp369 [V402 ] ( 0, 0 ) ref -> zero-ref "field V244._array (fldOffset=0x0)" P-INDEP
;* V403 tmp370 [V403 ] ( 0, 0 ) long -> zero-ref "field V244._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V404 tmp371 [V404,T81] ( 3, 10 ) int -> rsi "field V244._currentDepth (fldOffset=0x10)" P-INDEP
;* V405 tmp372 [V405 ] ( 0, 0 ) ref -> zero-ref "field V260._object (fldOffset=0x0)" P-INDEP
;* V406 tmp373 [V406 ] ( 0, 0 ) int -> zero-ref "field V260._integer (fldOffset=0x8)" P-INDEP
; V407 tmp374 [V407,T122] ( 3, 6 ) ref -> registers "field V261._object (fldOffset=0x0)" P-INDEP
; V408 tmp375 [V408,T149] ( 3, 6 ) int -> registers "field V261._integer (fldOffset=0x8)" P-INDEP
;* V409 tmp376 [V409,T218] ( 0, 0 ) ref -> zero-ref "field V266._object (fldOffset=0x0)" P-INDEP
; V410 tmp377 [V410,T183] ( 2, 4 ) int -> rbx "field V266._integer (fldOffset=0x8)" P-INDEP
;* V411 tmp378 [V411 ] ( 0, 0 ) ref -> zero-ref "field V268._object (fldOffset=0x0)" P-INDEP
;* V412 tmp379 [V412 ] ( 0, 0 ) int -> zero-ref "field V268._index (fldOffset=0x8)" P-INDEP
; V413 tmp380 [V413,T184] ( 2, 4 ) int -> rcx "field V268._length (fldOffset=0xc)" P-INDEP
;* V414 tmp381 [V414 ] ( 0, 0 ) ref -> zero-ref "field V270._object (fldOffset=0x0)" P-DEP
;* V415 tmp382 [V415 ] ( 0, 0 ) int -> zero-ref "field V270._integer (fldOffset=0x8)" P-DEP
;* V416 tmp383 [V416 ] ( 0, 0 ) ref -> zero-ref "field V275._startObject (fldOffset=0x0)" P-INDEP
;* V417 tmp384 [V417 ] ( 0, 0 ) ref -> zero-ref "field V275._endObject (fldOffset=0x8)" P-INDEP
;* V418 tmp385 [V418 ] ( 0, 0 ) int -> zero-ref "field V275._startInteger (fldOffset=0x10)" P-INDEP
;* V419 tmp386 [V419 ] ( 0, 0 ) int -> zero-ref "field V275._endInteger (fldOffset=0x14)" P-INDEP
; V420 tmp387 [V420,T167] ( 2, 4 ) byref -> r10 "field V280._reference (fldOffset=0x0)" P-INDEP
; V421 tmp388 [V421,T185] ( 2, 4 ) int -> r11 "field V280._length (fldOffset=0x8)" P-INDEP
;* V422 tmp389 [V422 ] ( 0, 0 ) ref -> zero-ref "field V292._array (fldOffset=0x0)" P-INDEP
;* V423 tmp390 [V423 ] ( 0, 0 ) long -> zero-ref "field V292._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V424 tmp391 [V424,T150] ( 3, 6 ) int -> rax "field V292._currentDepth (fldOffset=0x10)" P-INDEP
;* V425 tmp392 [V425 ] ( 0, 0 ) ref -> zero-ref "field V296._array (fldOffset=0x0)" P-INDEP
;* V426 tmp393 [V426 ] ( 0, 0 ) long -> zero-ref "field V296._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V427 tmp394 [V427,T14] ( 3, 40 ) int -> rcx "field V296._currentDepth (fldOffset=0x10)" P-INDEP
;* V428 tmp395 [V428 ] ( 0, 0 ) ref -> zero-ref "field V300._array (fldOffset=0x0)" P-INDEP
;* V429 tmp396 [V429 ] ( 0, 0 ) long -> zero-ref "field V300._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V430 tmp397 [V430,T151] ( 3, 6 ) int -> rsi "field V300._currentDepth (fldOffset=0x10)" P-INDEP
;* V431 tmp398 [V431 ] ( 0, 0 ) ref -> zero-ref "V152.[000..008)"
;* V432 tmp399 [V432 ] ( 0, 0 ) ref -> zero-ref "V152.[008..016)"
;* V433 tmp400 [V433 ] ( 0, 0 ) ref -> zero-ref "V152.[016..024)"
;* V434 tmp401 [V434 ] ( 0, 0 ) long -> zero-ref "V152.[024..032)"
; V435 tmp402 [V435,T123] ( 3, 6 ) ref -> registers "V259.[000..008)"
;* V436 tmp403 [V436 ] ( 0, 0 ) ref -> zero-ref "V259.[008..016)"
; V437 tmp404 [V437,T152] ( 3, 6 ) int -> r10 "V259.[016..020)"
;* V438 tmp405 [V438 ] ( 0, 0 ) int -> zero-ref "V259.[020..024)"
-; V439 tmp406 [V439,T58] ( 3, 12 ) byref -> r8 "Spilling address for field-by-field copy"
+; V439 tmp406 [V439,T44] ( 4, 16 ) byref -> [rbp-0x9A8] spill-single-def "Spilling address for field-by-field copy"
; V440 tmp407 [V440,T199] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V441 tmp408 [V441,T203] ( 3, 3 ) int -> rsi "index expr"
; V442 tmp409 [V442,T104] ( 2, 8 ) ref -> rdi "argument with side effect"
; V443 tmp410 [V443,T112] ( 2, 8 ) int -> rsi "argument with side effect"
; V444 tmp411 [V444,T105] ( 2, 8 ) ref -> rdi "argument with side effect"
; V445 tmp412 [V445,T213] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V446 tmp413 [V446,T262] ( 2, 0 ) ref -> rbx "argument with side effect"
; V447 tmp414 [V447,T263] ( 2, 0 ) ref -> rsi "argument with side effect"
; V448 tmp415 [V448,T264] ( 2, 0 ) ref -> rbx "argument with side effect"
; V449 tmp416 [V449,T265] ( 2, 0 ) ref -> rsi "argument with side effect"
; V450 tmp417 [V450,T200] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V451 tmp418 [V451,T204] ( 3, 3 ) int -> rsi "index expr"
; V452 tmp419 [V452,T201] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V453 tmp420 [V453,T21] ( 3, 24 ) ref -> rdx "arr expr"
; V454 tmp421 [V454,T22] ( 3, 24 ) ref -> rsi "arr expr"
;* V455 tmp422 [V455,T113] ( 0, 0 ) ref -> zero-ref "arr expr"
; V456 tmp423 [V456,T106] ( 2, 8 ) ref -> rdi "argument with side effect"
; V457 tmp424 [V457,T59] ( 3, 12 ) ref -> rdx "arr expr"
; V458 tmp425 [V458,T214] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V459 tmp426 [V459,T215] ( 2, 2 ) ref -> rdx single-def "argument with side effect"
;* V460 cse0 [V460,T159] ( 0, 0 ) long -> zero-ref multi-def "CSE #23: conservative"
-; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x998] spill-single-def "CSE #36: conservative"
+; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x9B0] spill-single-def "CSE #36: conservative"
; V462 cse2 [V462,T60] ( 3, 12 ) byref -> rsi "CSE #54: conservative"
; V463 cse3 [V463,T63] ( 3, 12 ) long -> rsi "CSE #35: conservative"
; V464 cse4 [V464,T64] ( 3, 12 ) long -> rdi "CSE #53: conservative"
-; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x848] multi-def "CSE #19: conservative"
+; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x858] multi-def "CSE #19: conservative"
; V466 cse6 [V466,T153] ( 3, 6 ) int -> rdi "CSE #03: conservative"
; V467 cse7 [V467,T154] ( 3, 6 ) int -> rdi "CSE #20: conservative"
-; V468 cse8 [V468,T44] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
-; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9A0] spill-single-def "CSE #22: conservative"
+; V468 cse8 [V468,T45] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
+; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9B8] spill-single-def "CSE #22: conservative"
; V470 cse10 [V470,T155] ( 3, 6 ) int -> rdi "CSE #44: conservative"
-; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9A8] multi-def "CSE #02: moderate"
-; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x850] "Widened IV V26"
-; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x858] "Widened IV V15"
+; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9C0] multi-def "CSE #02: moderate"
+; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x860] "Widened IV V26"
+; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x868] "Widened IV V15"
; V474 rat2 [V474,T61] ( 3, 12 ) ref -> r11 "delegate invoke call"
-; TEMP_01 int -> [rbp-0x9AC]
-; TEMP_02 ref -> [rbp-0x9B8]
+; TEMP_01 int -> [rbp-0x9C4]
+; TEMP_02 ref -> [rbp-0x9D0]
;
-; Lcl frame size = 2536
+; Lcl frame size = 2552
G_M37925_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 0x9E8
- lea rbp, [rsp+0xA10]
- xor eax, eax
- mov qword ptr [rbp-0x9B8], rax
+ sub rsp, 0x9F8
+ lea rbp, [rsp+0xA20]
vxorps xmm8, xmm8, xmm8
- vmovdqa xmmword ptr [rbp-0x9B0], xmm8
- vmovdqa xmmword ptr [rbp-0x9A0], xmm8
- mov rax, -0x960
+ vmovdqa xmmword ptr [rbp-0x9D0], xmm8
+ mov rax, -0x990
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
mov r13, rdi
mov rbx, rsi
mov rax, rdx
mov r14, rcx
mov r15, r8
mov r12, r9
- ;; size=111 bbWeight=1 PerfScore 22.33
+ ;; size=94 bbWeight=1 PerfScore 19.08
G_M37925_IG02:
mov r10, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x870], r10
+ mov gword ptr [rbp-0x880], r10
cmp gword ptr [r10+0x08], 0
je SHORT G_M37925_IG04
;; size=18 bbWeight=1 PerfScore 7.00
G_M37925_IG03:
cmp byte ptr [r15+0x90], 0
je SHORT G_M37925_IG05
;; size=10 bbWeight=0.50 PerfScore 2.00
G_M37925_IG04:
mov rdi, r13
mov rsi, rbx
mov rdx, rax
mov rcx, r14
mov r8, r15
mov r9, r12
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
jmp G_M37925_IG189
;; size=35 bbWeight=0.50 PerfScore 3.38
G_M37925_IG05:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x878], rcx
+ mov gword ptr [rbp-0x888], rcx
cmp byte ptr [r15+0x28], 0
jne SHORT G_M37925_IG07
cmp byte ptr [r15+0x8B], 0
jne SHORT G_M37925_IG06
cmp byte ptr [rbx+0x28], 1
jne G_M37925_IG218
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M37925_IG08
xor rdi, rdi
jmp SHORT G_M37925_IG09
;; size=52 bbWeight=0.50 PerfScore 10.62
G_M37925_IG06:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M37925_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M37925_IG07:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M37925_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M37925_IG08:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M37925_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M37925_IG09:
test rdi, rdi
je G_M37925_IG50
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M37925_IG50
mov r13, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M37925_IG10
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=62 bbWeight=0.50 PerfScore 8.75
G_M37925_IG10:
lea rcx, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rcx
- mov bword ptr [rbp-0x8D0], rcx
- mov rax, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rcx
+ mov bword ptr [rbp-0x8E0], rcx
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M37925_IG11
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x8D8], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x8E8], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov r8, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [r8]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x8D0]
+ mov rdi, bword ptr [rbp-0x8E0]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x8D8]
+ mov rsi, gword ptr [rbp-0x8E8]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=110 bbWeight=0.50 PerfScore 10.00
G_M37925_IG11:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M37925_IG42
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M37925_IG13
;; size=31 bbWeight=4 PerfScore 46.00
G_M37925_IG12:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M37925_IG16
;; size=20 bbWeight=2 PerfScore 13.00
G_M37925_IG13:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x360], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x350], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M37925_IG14:
lea rdi, [rbp-0x360]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M37925_IG15
xor rax, rax
xor ecx, ecx
jmp SHORT G_M37925_IG16
;; size=30 bbWeight=2 PerfScore 15.00
G_M37925_IG15:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M37925_IG16:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M37925_IG18
;; size=6 bbWeight=4 PerfScore 16.00
G_M37925_IG17:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M37925_IG19
;; size=8 bbWeight=2 PerfScore 5.00
G_M37925_IG18:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M37925_IG19:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M37925_IG23
;; size=10 bbWeight=4 PerfScore 16.00
G_M37925_IG20:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M37925_IG21
mov rcx, gword ptr [rdi+0x28]
jmp SHORT G_M37925_IG22
;; size=22 bbWeight=2 PerfScore 18.50
G_M37925_IG21:
mov rcx, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M37925_IG22:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rcx+0x88]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rcx]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M37925_IG33
cmp byte ptr [r14+0x93], 0
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
je G_M37925_IG193
;; size=75 bbWeight=2 PerfScore 30.00
G_M37925_IG23:
mov dword ptr [rsp], 1
mov rsi, rdx
mov edx, r8d
lea r9, [rbp-0x348]
mov rdi, r13
mov rcx, r15
mov r8, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [rax]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8C8], rax
+ mov gword ptr [rbp-0x8D8], rax
movzx rcx, byte ptr [rbp-0x348]
mov dword ptr [rbp-0x424], ecx
cmp byte ptr [rax+0x9C], 0
jne G_M37925_IG37
;; size=74 bbWeight=4 PerfScore 52.00
G_M37925_IG24:
cmp byte ptr [rbx+0x24], 0
je G_M37925_IG34
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M37925_IG25
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=31 bbWeight=2 PerfScore 23.00
G_M37925_IG25:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M37925_IG26
cmp eax, 3
jne G_M37925_IG39
;; size=21 bbWeight=2 PerfScore 9.50
G_M37925_IG26:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M37925_IG27
cmp edi, 3
jne SHORT G_M37925_IG28
;; size=15 bbWeight=2 PerfScore 9.50
G_M37925_IG27:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG28:
mov dword ptr [rbp-0x4EC], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M37925_IG29:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M37925_IG31
;; size=30 bbWeight=16 PerfScore 144.00
G_M37925_IG30:
cmp esi, 3
jne SHORT G_M37925_IG32
;; size=5 bbWeight=8 PerfScore 10.00
G_M37925_IG31:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M37925_IG32:
mov ecx, dword ptr [rbp-0x4EC]
cmp ecx, edi
jl SHORT G_M37925_IG29
jmp G_M37925_IG39
;; size=15 bbWeight=16 PerfScore 68.00
G_M37925_IG33:
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
jmp G_M37925_IG23
;; size=19 bbWeight=1 PerfScore 4.00
G_M37925_IG34:
lea rdi, bword ptr [rbp-0x4E8]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M37925_IG35
cmp edi, 3
jne SHORT G_M37925_IG36
;; size=38 bbWeight=2 PerfScore 65.50
G_M37925_IG35:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG36:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
- jne G_M37925_IG39
+ jne SHORT G_M37925_IG39
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x4E8]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ lea rsi, [rbp-0x4E8]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
jmp SHORT G_M37925_IG39
- ;; size=108 bbWeight=2 PerfScore 102.00
+ ;; size=43 bbWeight=2 PerfScore 18.00
G_M37925_IG37:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0x424], 0
jne SHORT G_M37925_IG38
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M37925_IG39
;; size=52 bbWeight=2 PerfScore 34.50
G_M37925_IG38:
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=28 bbWeight=2 PerfScore 10.00
G_M37925_IG39:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=15 bbWeight=4 PerfScore 10.00
G_M37925_IG40:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M37925_IG41:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
jmp G_M37925_IG11
;; size=13 bbWeight=4 PerfScore 16.00
G_M37925_IG42:
- mov r14, gword ptr [rbp-0x870]
+ mov r14, gword ptr [rbp-0x880]
mov rcx, gword ptr [r14+0x40]
test rcx, rcx
je SHORT G_M37925_IG43
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M37925_IG43:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rbx, rax
cmp dword ptr [r14+0xF4], 0
jle G_M37925_IG49
mov rdi, gword ptr [rbx+0x48]
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rcx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne SHORT G_M37925_IG48
mov rsi, gword ptr [rbx+0x48]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
;; size=72 bbWeight=0.50 PerfScore 10.62
G_M37925_IG44:
cmp gword ptr [r15+0x68], 0
je SHORT G_M37925_IG45
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
;; size=25 bbWeight=0.50 PerfScore 3.88
G_M37925_IG45:
mov rsi, 0xD1FFAB1E ; System.Int64
cmp qword ptr [r13], rsi
je SHORT G_M37925_IG47
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M37925_IG46:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int64
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M37925_IG47:
mov rsi, qword ptr [r13+0x08]
mov qword ptr [r12], rsi
jmp G_M37925_IG149
;; size=13 bbWeight=0.50 PerfScore 2.50
G_M37925_IG48:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M37925_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M37925_IG49:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M37925_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M37925_IG50:
lea rsi, bword ptr [rbx+0x80]
mov rdi, gword ptr [rsi]
mov rax, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8E0], rax
+ mov gword ptr [rbp-0x8F0], rax
mov edx, dword ptr [rsi+0x10]
and edx, 0xD1FFAB1E
mov dword ptr [rbp-0x4F0], edx
mov r8d, dword ptr [rsi+0x14]
and r8d, 0xD1FFAB1E
mov dword ptr [rbp-0x4F4], r8d
cmp rdi, rax
je SHORT G_M37925_IG51
mov rsi, rdi
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r9, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r9]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x8E8], rax
- mov rsi, gword ptr [rbp-0x8E0]
+ mov gword ptr [rbp-0x8F8], rax
+ mov rsi, gword ptr [rbp-0x8F0]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rdi, dword ptr [rbp-0x4F4]
add rdi, qword ptr [rax+0x10]
movsxd rax, dword ptr [rbp-0x4F0]
- mov rcx, gword ptr [rbp-0x8E8]
+ mov rcx, gword ptr [rbp-0x8F8]
add rax, qword ptr [rcx+0x10]
sub rdi, rax
jmp SHORT G_M37925_IG52
;; size=155 bbWeight=0.50 PerfScore 18.88
G_M37925_IG51:
mov r8d, dword ptr [rbp-0x4F4]
sub r8d, dword ptr [rbp-0x4F0]
movsxd rdi, r8d
;; size=17 bbWeight=0.50 PerfScore 1.62
G_M37925_IG52:
test rdi, rdi
je SHORT G_M37925_IG53
xor rax, rax
xor edx, edx
jmp SHORT G_M37925_IG54
;; size=11 bbWeight=0.50 PerfScore 1.88
G_M37925_IG53:
mov rax, bword ptr [rbx+0x30]
mov edx, dword ptr [rbx+0x38]
;; size=7 bbWeight=0.50 PerfScore 2.00
G_M37925_IG54:
- mov bword ptr [rbp-0x968], rax
- mov dword ptr [rbp-0x828], edx
+ mov bword ptr [rbp-0x978], rax
+ mov dword ptr [rbp-0x838], edx
mov rsi, gword ptr [rbx+0x80]
- mov gword ptr [rbp-0x970], rsi
+ mov gword ptr [rbp-0x980], rsi
mov r8, gword ptr [rbx+0x88]
- mov gword ptr [rbp-0x978], r8
+ mov gword ptr [rbp-0x988], r8
mov r9d, dword ptr [rbx+0x90]
- mov dword ptr [rbp-0x82C], r9d
+ mov dword ptr [rbp-0x83C], r9d
mov r11d, dword ptr [rbx+0x94]
- mov dword ptr [rbp-0x830], r11d
+ mov dword ptr [rbp-0x840], r11d
mov rdi, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x918], rdi
+ mov gword ptr [rbp-0x928], rdi
cmp byte ptr [rdi+0x103], 0
jne G_M37925_IG202
mov eax, dword ptr [rdi+0xF0]
- mov dword ptr [rbp-0x9AC], eax
+ mov dword ptr [rbp-0x9C4], eax
mov rax, gword ptr [rdi+0x08]
mov rax, gword ptr [rax+0x10]
- mov edi, dword ptr [rbp-0x9AC]
+ mov edi, dword ptr [rbp-0x9C4]
cmp edi, dword ptr [rax+0x10]
jne G_M37925_IG220
lea rax, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rax
- mov bword ptr [rbp-0x920], rax
- mov rdi, gword ptr [rbp-0x918]
+ mov bword ptr [rbp-0x9C0], rax
+ mov bword ptr [rbp-0x930], rax
+ mov rdi, gword ptr [rbp-0x928]
cmp dword ptr [rdi+0xF4], 0
jle SHORT G_M37925_IG55
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x928], rax
- mov rcx, gword ptr [rbp-0x918]
+ mov gword ptr [rbp-0x938], rax
+ mov rcx, gword ptr [rbp-0x928]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x920]
+ mov rdi, bword ptr [rbp-0x930]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x928]
+ mov rsi, gword ptr [rbp-0x938]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=237 bbWeight=0.50 PerfScore 26.50
G_M37925_IG55:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
- mov gword ptr [rbp-0x9B8], rdx
+ mov gword ptr [rbp-0x9D0], rdx
mov rdx, qword ptr [r13]
mov rdx, qword ptr [rdx+0x68]
- mov qword ptr [rbp-0x848], rdx
- mov rdx, gword ptr [rbp-0x9B8]
- mov r11, qword ptr [rbp-0x848]
+ mov qword ptr [rbp-0x858], rdx
+ mov rdx, gword ptr [rbp-0x9D0]
+ mov r11, qword ptr [rbp-0x858]
call [r11+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
;; size=55 bbWeight=0.50 PerfScore 6.50
G_M37925_IG56:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M37925_IG107
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M37925_IG58
;; size=31 bbWeight=4 PerfScore 46.00
G_M37925_IG57:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M37925_IG61
;; size=20 bbWeight=2 PerfScore 13.00
G_M37925_IG58:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x5B8], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x5A8], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M37925_IG59:
lea rdi, [rbp-0x5B8]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M37925_IG60
xor rax, rax
xor ecx, ecx
jmp SHORT G_M37925_IG61
;; size=30 bbWeight=2 PerfScore 15.00
G_M37925_IG60:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M37925_IG61:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M37925_IG63
;; size=6 bbWeight=4 PerfScore 16.00
G_M37925_IG62:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M37925_IG64
;; size=8 bbWeight=2 PerfScore 5.00
G_M37925_IG63:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M37925_IG64:
- mov bword ptr [rbp-0x990], rdx
+ mov bword ptr [rbp-0x9A0], rdx
mov rax, rdx
- mov bword ptr [rbp-0x988], rax
- mov dword ptr [rbp-0x83C], r8d
+ mov bword ptr [rbp-0x998], rax
+ mov dword ptr [rbp-0x84C], r8d
mov ecx, r8d
- mov dword ptr [rbp-0x838], ecx
+ mov dword ptr [rbp-0x848], ecx
cmp byte ptr [r15+0x8B], 0
je G_M37925_IG74
;; size=47 bbWeight=4 PerfScore 34.00
G_M37925_IG65:
- mov r9, bword ptr [rbp-0x9A8]
+ mov r9, bword ptr [rbp-0x9C0]
mov rdi, r9
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M37925_IG66
mov r10, gword ptr [rdi+0x28]
jmp SHORT G_M37925_IG67
;; size=22 bbWeight=2 PerfScore 18.50
G_M37925_IG66:
mov r10, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M37925_IG67:
mov rdi, rax
mov esi, ecx
mov rdx, gword ptr [r10+0x88]
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [r10]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
- mov rax, bword ptr [rbp-0x988]
- mov ecx, dword ptr [rbp-0x838]
+ mov rax, bword ptr [rbp-0x998]
+ mov ecx, dword ptr [rbp-0x848]
je SHORT G_M37925_IG74
cmp byte ptr [r14+0x93], 0
je G_M37925_IG203
;; size=56 bbWeight=2 PerfScore 26.00
G_M37925_IG68:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M37925_IG70
;; size=15 bbWeight=4 PerfScore 22.00
G_M37925_IG69:
cmp edi, 3
jne SHORT G_M37925_IG71
;; size=5 bbWeight=2 PerfScore 2.50
G_M37925_IG70:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG71:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdx, rdx
mov gword ptr [rsi], rdx
;; size=32 bbWeight=4 PerfScore 25.00
G_M37925_IG72:
mov gword ptr [rsi+0x08], rdx
;; size=4 bbWeight=4 PerfScore 4.00
G_M37925_IG73:
mov gword ptr [rsi+0x10], rdx
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M37925_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M37925_IG74:
lea rsi, [rbp-0x500]
mov qword ptr [rsp], rsi
mov rsi, rax
mov edx, ecx
mov rdi, r13
mov rcx, r15
mov r8, rbx
mov r9, r14
- mov r10, qword ptr [rbp-0x848]
+ mov r10, qword ptr [rbp-0x858]
call [r10+0x20]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:TryLookupConstructorParameter(System.ReadOnlySpan`1[ubyte],byref,byref,System.Text.Json.JsonSerializerOptions,byref):ubyte:this
test eax, eax
je G_M37925_IG91
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov rdi, gword ptr [rbp-0x500]
cmp byte ptr [rdi+0x35], 0
jne G_M37925_IG89
cmp byte ptr [rbx+0x24], 0
je SHORT G_M37925_IG84
;; size=85 bbWeight=4 PerfScore 83.00
G_M37925_IG75:
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M37925_IG76
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=21 bbWeight=2 PerfScore 15.00
G_M37925_IG76:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M37925_IG77
cmp eax, 3
jne G_M37925_IG87
;; size=21 bbWeight=2 PerfScore 9.50
G_M37925_IG77:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M37925_IG78
cmp edi, 3
jne SHORT G_M37925_IG79
;; size=15 bbWeight=2 PerfScore 9.50
G_M37925_IG78:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG79:
mov dword ptr [rbp-0x73C], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M37925_IG80:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M37925_IG82
;; size=30 bbWeight=16 PerfScore 144.00
G_M37925_IG81:
cmp esi, 3
jne SHORT G_M37925_IG83
;; size=5 bbWeight=8 PerfScore 10.00
G_M37925_IG82:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M37925_IG83:
mov ecx, dword ptr [rbp-0x73C]
cmp ecx, edi
jl SHORT G_M37925_IG80
- jmp G_M37925_IG87
- ;; size=15 bbWeight=16 PerfScore 68.00
+ jmp SHORT G_M37925_IG87
+ ;; size=12 bbWeight=16 PerfScore 68.00
G_M37925_IG84:
lea rdi, bword ptr [rbp-0x738]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M37925_IG85
cmp edi, 3
jne SHORT G_M37925_IG86
;; size=38 bbWeight=2 PerfScore 65.50
G_M37925_IG85:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG86:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M37925_IG87
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x738]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=102 bbWeight=2 PerfScore 98.00
+ lea rsi, [rbp-0x738]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=41 bbWeight=2 PerfScore 14.00
G_M37925_IG87:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
mov rsi, gword ptr [rdi+0x40]
xor rdx, rdx
mov gword ptr [rsi+0x20], rdx
;; size=20 bbWeight=4 PerfScore 18.00
G_M37925_IG88:
mov gword ptr [rdi+0x08], rdx
mov byte ptr [rdi+0x58], 0
jmp G_M37925_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M37925_IG89:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, gword ptr [rbp-0x500]
- mov r8, qword ptr [rbp-0x848]
+ mov r8, qword ptr [rbp-0x858]
call [r8+0x10]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:ReadAndCacheConstructorArgument(byref,byref,System.Text.Json.Serialization.Metadata.JsonParameterInfo):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
mov rdx, gword ptr [rsi+0x40]
xor r9, r9
mov gword ptr [rdx+0x20], r9
;; size=48 bbWeight=4 PerfScore 41.00
G_M37925_IG90:
mov gword ptr [rsi+0x08], r9
mov byte ptr [rsi+0x58], 0
jmp G_M37925_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M37925_IG91:
xor esi, esi
mov dword ptr [rsp], esi
- mov rsi, bword ptr [rbp-0x988]
- mov edx, dword ptr [rbp-0x838]
+ mov rsi, bword ptr [rbp-0x998]
+ mov edx, dword ptr [rbp-0x848]
lea r9, [rbp-0x508]
mov rcx, r15
mov r8, r14
xor rdi, rdi
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [r10]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8F0], rax
+ mov gword ptr [rbp-0x900], rax
cmp byte ptr [rax+0x9B], 0
je G_M37925_IG100
;; size=66 bbWeight=4 PerfScore 51.00
G_M37925_IG92:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x8F8], rcx
+ mov gword ptr [rbp-0x908], rcx
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x9A0], rdx
+ mov gword ptr [rbp-0x9B8], rdx
test rdx, rdx
jne SHORT G_M37925_IG95
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, gword ptr [r15+0x58]
mov rsi, gword ptr [rsi+0x10]
mov rsi, gword ptr [rsi+0x10]
mov esi, dword ptr [rsi+0x10]
cmp esi, 1
jle SHORT G_M37925_IG93
jmp SHORT G_M37925_IG94
;; size=82 bbWeight=2 PerfScore 44.50
G_M37925_IG93:
mov esi, 1
;; size=5 bbWeight=2 PerfScore 0.50
G_M37925_IG94:
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
lea rdi, bword ptr [rcx+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
jmp G_M37925_IG97
;; size=38 bbWeight=2 PerfScore 22.00
G_M37925_IG95:
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
mov edi, dword ptr [rcx+0x30]
cmp edi, dword ptr [rdx+0x08]
jne G_M37925_IG97
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x9A0]
+ mov rsi, gword ptr [rbp-0x9B8]
mov esi, dword ptr [rsi+0x08]
add esi, esi
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov gword ptr [rbp-0x908], rax
- mov rcx, gword ptr [rbp-0x8F8]
+ mov gword ptr [rbp-0x918], rax
+ mov rcx, gword ptr [rbp-0x908]
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x930], rdx
+ mov gword ptr [rbp-0x940], rdx
cmp byte ptr [rdx], dl
test rax, rax
je G_M37925_IG106
mov rdi, qword ptr [rax]
mov edi, dword ptr [rdi+0x04]
add edi, -24
shr edi, 3
je SHORT G_M37925_IG96
cmp edi, 1
jne G_M37925_IG213
;; size=137 bbWeight=2 PerfScore 73.00
G_M37925_IG96:
mov rdi, rdx
xor esi, esi
mov r8, 0xD1FFAB1E ; code for System.Array:GetLowerBound(int):int:this
call [r8]System.Array:GetLowerBound(int):int:this
mov esi, eax
- mov rdi, gword ptr [rbp-0x930]
+ mov rdi, gword ptr [rbp-0x940]
mov r8d, dword ptr [rdi+0x08]
test r8d, r8d
jl G_M37925_IG191
- mov rdx, gword ptr [rbp-0x908]
+ mov rdx, gword ptr [rbp-0x918]
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Array:Copy(System.Array,int,System.Array,int,int)
call [rax]System.Array:Copy(System.Array,int,System.Array,int,int)
- mov rax, gword ptr [rbp-0x8F8]
+ mov rax, gword ptr [rbp-0x908]
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x910], rcx
+ mov gword ptr [rbp-0x920], rcx
lea rdi, bword ptr [rax+0x10]
- mov rsi, gword ptr [rbp-0x908]
+ mov rsi, gword ptr [rbp-0x918]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x910]
+ mov rsi, gword ptr [rbp-0x920]
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
;; size=134 bbWeight=2 PerfScore 58.00
G_M37925_IG97:
- mov rsi, gword ptr [rbp-0x8F8]
+ mov rsi, gword ptr [rbp-0x908]
mov rax, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x900], rax
+ mov gword ptr [rbp-0x910], rax
mov ecx, dword ptr [rsi+0x30]
mov dword ptr [rbp-0x50C], ecx
lea edi, [rcx+0x01]
mov dword ptr [rsi+0x30], edi
lea rsi, [rbp-0x548]
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
call [rdx]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
- mov rdx, qword ptr [rbx+0x10]
- movsxd r8, dword ptr [rbx+0x20]
- add rdx, r8
- mov rcx, gword ptr [r15+0x38]
- mov rdi, gword ptr [r15+0x40]
- ;; size=74 bbWeight=2 PerfScore 45.50
+ mov rax, qword ptr [rbx+0x10]
+ movsxd rcx, dword ptr [rbx+0x20]
+ add rax, rcx
+ mov qword ptr [rbp-0x748], rax
+ mov rdi, gword ptr [r15+0x38]
+ mov rsi, gword ptr [r15+0x40]
+ ;; size=81 bbWeight=2 PerfScore 47.50
G_M37925_IG98:
vmovdqu ymm0, ymmword ptr [rbp-0x548]
vmovdqu ymmword ptr [rbp-0x580], ymm0
vmovdqu ymm0, ymmword ptr [rbp-0x530]
vmovdqu ymmword ptr [rbp-0x568], ymm0
;; size=32 bbWeight=2 PerfScore 20.00
G_M37925_IG99:
- mov rsi, gword ptr [rbp-0x8F0]
- mov gword ptr [rbp-0x5A0], rsi
- mov gword ptr [rbp-0x598], rcx
- mov gword ptr [rbp-0x590], rdi
- mov ecx, dword ptr [rbp-0x50C]
- mov rdi, gword ptr [rbp-0x900]
- cmp ecx, dword ptr [rdi+0x08]
+ mov rdx, gword ptr [rbp-0x900]
+ mov gword ptr [rbp-0x5A0], rdx
+ mov gword ptr [rbp-0x598], rdi
+ mov gword ptr [rbp-0x590], rsi
+ mov edi, dword ptr [rbp-0x50C]
+ mov rsi, gword ptr [rbp-0x910]
+ cmp edi, dword ptr [rsi+0x08]
jae G_M37925_IG192
- imul rcx, rcx, 88
- lea r8, bword ptr [rdi+rcx+0x10]
- mov rdi, r8
- lea rsi, bword ptr [rbp-0x5A0]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 5
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- mov qword ptr [r8+0x18], rdx
- ;; size=105 bbWeight=2 PerfScore 92.00
+ imul rdi, rdi, 88
+ lea rcx, bword ptr [rsi+rdi+0x10]
+ mov bword ptr [rbp-0x9A8], rcx
+ cmp byte ptr [rcx], cl
+ mov rdi, rcx
+ lea rsi, [rbp-0x5A0]
+ mov edx, 32
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rdi, bword ptr [rbp-0x9A8]
+ mov rsi, qword ptr [rbp-0x748]
+ mov qword ptr [rdi+0x18], rsi
+ ;; size=106 bbWeight=2 PerfScore 44.00
G_M37925_IG100:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M37925_IG102
;; size=15 bbWeight=4 PerfScore 22.00
G_M37925_IG101:
cmp edi, 3
jne SHORT G_M37925_IG103
;; size=5 bbWeight=2 PerfScore 2.50
G_M37925_IG102:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG103:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=32 bbWeight=4 PerfScore 25.00
G_M37925_IG104:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M37925_IG105:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M37925_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M37925_IG106:
jmp G_M37925_IG96
;; size=5 bbWeight=1 PerfScore 2.00
G_M37925_IG107:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
xor rsi, rsi
mov gword ptr [rbp-0x500], rsi
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rsi, rax
mov rdi, r13
- mov r13, qword ptr [rbp-0x848]
+ mov r13, qword ptr [rbp-0x858]
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:CreateObject(byref):System.Object:this
mov rbx, rax
mov rsi, 0xD1FFAB1E ; System.Int64
cmp qword ptr [rbx], rsi
je SHORT G_M37925_IG109
;; size=58 bbWeight=0.50 PerfScore 6.12
G_M37925_IG108:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Int64
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M37925_IG109:
mov rdi, 0xD1FFAB1E ; System.Int64
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rsi, qword ptr [rbx+0x08]
mov qword ptr [r13+0x08], rsi
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
mov rax, gword ptr [rbx+0x38]
test rax, rax
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
je SHORT G_M37925_IG110
mov rsi, r13
mov rdi, gword ptr [rax+0x08]
call [rax+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=59 bbWeight=0.50 PerfScore 7.50
G_M37925_IG110:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp dword ptr [rax+0x30], 0
jle G_M37925_IG143
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x880], rcx
+ mov gword ptr [rbp-0x890], rcx
xor edx, edx
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
;; size=37 bbWeight=0.50 PerfScore 4.62
G_M37925_IG111:
cmp edx, dword ptr [rcx+0x08]
jae G_M37925_IG192
- mov qword ptr [rbp-0x858], rdx
+ mov qword ptr [rbp-0x868], rdx
imul rsi, rdx, 88
mov r8, gword ptr [rcx+rsi+0x10]
- mov gword ptr [rbp-0x888], r8
+ mov gword ptr [rbp-0x898], r8
lea r9, bword ptr [rcx+rsi+0x10]
- mov bword ptr [rbp-0x998], r9
+ mov bword ptr [rbp-0x9B0], r9
mov r10, qword ptr [r9+0x18]
mov qword ptr [rbp-0xF0], r10
mov r11, gword ptr [r9+0x08]
- mov gword ptr [rbp-0x890], r11
+ mov gword ptr [rbp-0x8A0], r11
mov rdi, gword ptr [r9+0x10]
- mov gword ptr [rbp-0x898], rdi
- mov esi, dword ptr [rbp-0x82C]
+ mov gword ptr [rbp-0x8A8], rdi
+ mov esi, dword ptr [rbp-0x83C]
mov r12d, esi
and r12d, 0xD1FFAB1E
- mov dword ptr [rbp-0x740], r12d
- mov ebx, dword ptr [rbp-0x830]
+ mov dword ptr [rbp-0x74C], r12d
+ mov ebx, dword ptr [rbp-0x840]
and ebx, 0xD1FFAB1E
- mov rsi, gword ptr [rbp-0x970]
- mov r12, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x980]
+ mov r12, gword ptr [rbp-0x988]
cmp rsi, r12
je SHORT G_M37925_IG113
;; size=131 bbWeight=4 PerfScore 112.00
G_M37925_IG112:
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r12, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r12]CORINFO_HELP_CHKCASTCLASS
- mov rsi, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x988]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
call [r12]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, ebx
add rsi, qword ptr [rax+0x10]
- movsxd rdi, dword ptr [rbp-0x740]
- mov r12, gword ptr [rbp-0x970]
+ movsxd rdi, dword ptr [rbp-0x74C]
+ mov r12, gword ptr [rbp-0x980]
add rdi, qword ptr [r12+0x10]
sub rsi, rdi
jmp SHORT G_M37925_IG114
;; size=76 bbWeight=2 PerfScore 40.50
G_M37925_IG113:
- sub ebx, dword ptr [rbp-0x740]
+ sub ebx, dword ptr [rbp-0x74C]
movsxd rbx, ebx
mov r12, rsi
mov rsi, rbx
;; size=15 bbWeight=2 PerfScore 5.50
G_M37925_IG114:
test rsi, rsi
je G_M37925_IG121
;; size=9 bbWeight=4 PerfScore 5.00
G_M37925_IG115:
mov r10, qword ptr [rbp-0xF0]
test r10, r10
jl G_M37925_IG214
test r10, r10
jne SHORT G_M37925_IG116
mov rbx, r12
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov r10d, esi
jmp G_M37925_IG120
;; size=38 bbWeight=2 PerfScore 14.00
G_M37925_IG116:
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov ebx, esi
and ebx, 0xD1FFAB1E
- mov r11d, dword ptr [rbp-0x830]
+ mov r11d, dword ptr [rbp-0x840]
and r11d, 0xD1FFAB1E
- mov dword ptr [rbp-0x75C], r11d
- mov rdi, gword ptr [rbp-0x978]
+ mov dword ptr [rbp-0x76C], r11d
+ mov rdi, gword ptr [rbp-0x988]
cmp r12, rdi
je SHORT G_M37925_IG117
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r11]CORINFO_HELP_CHKCASTCLASS
mov ecx, dword ptr [r12+0x24]
sub ecx, ebx
movsxd rdi, ecx
mov rsi, qword ptr [rbp-0xF0]
cmp rdi, rsi
jg SHORT G_M37925_IG118
test ecx, ecx
jl G_M37925_IG215
movsxd rcx, ecx
sub rsi, rcx
mov rcx, rsi
mov rdi, gword ptr [r12+0x08]
- mov rsi, gword ptr [rbp-0x978]
- mov edx, dword ptr [rbp-0x75C]
+ mov rsi, gword ptr [rbp-0x988]
+ mov edx, dword ptr [rbp-0x76C]
mov r8d, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
jmp SHORT G_M37925_IG119
;; size=150 bbWeight=2 PerfScore 52.00
G_M37925_IG117:
- mov r11d, dword ptr [rbp-0x75C]
+ mov r11d, dword ptr [rbp-0x76C]
sub r11d, ebx
movsxd r11, r11d
mov r10, qword ptr [rbp-0xF0]
cmp r11, r10
mov rsi, r10
jl G_M37925_IG216
;; size=32 bbWeight=2 PerfScore 8.00
G_M37925_IG118:
add ebx, esi
mov rsi, r12
mov rax, rsi
mov edx, ebx
;; size=10 bbWeight=2 PerfScore 2.00
G_M37925_IG119:
- mov ebx, dword ptr [rbp-0x82C]
+ mov ebx, dword ptr [rbp-0x83C]
mov r10d, ebx
and r10d, 0xD1FFAB1E
or r10d, edx
mov rbx, rax
;; size=22 bbWeight=2 PerfScore 4.00
G_M37925_IG120:
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x340], ymm0
vmovdqu ymmword ptr [rbp-0x320], ymm0
vmovdqu ymmword ptr [rbp-0x300], ymm0
vmovdqu ymmword ptr [rbp-0x2E0], ymm0
vmovdqu ymmword ptr [rbp-0x2C0], ymm0
vmovdqu ymmword ptr [rbp-0x2A0], ymm0
- mov gword ptr [rbp-0x758], rbx
- mov rbx, gword ptr [rbp-0x978]
- mov gword ptr [rbp-0x750], rbx
- mov dword ptr [rbp-0x748], r10d
- mov r10d, dword ptr [rbp-0x830]
- mov dword ptr [rbp-0x744], r10d
+ mov gword ptr [rbp-0x768], rbx
+ mov rbx, gword ptr [rbp-0x988]
+ mov gword ptr [rbp-0x760], rbx
+ mov dword ptr [rbp-0x758], r10d
+ mov r10d, dword ptr [rbp-0x840]
+ mov dword ptr [rbp-0x754], r10d
lea rdi, [rsp]
- lea rsi, [rbp-0x758]
+ lea rsi, [rbp-0x768]
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
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp+0x18]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x38], rcx
add rsi, 8
add rdi, 8
movsq
movsq
lea rdi, [rbp-0x340]
mov esi, 1
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [rcx]System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x340]
mov ecx, 24
rep movsq
jmp G_M37925_IG122
;; size=236 bbWeight=2 PerfScore 172.67
G_M37925_IG121:
mov r10, qword ptr [rbp-0xF0]
movsxd rsi, r10d
cmp r10, rsi
jne G_M37925_IG191
mov esi, r10d
- cmp esi, dword ptr [rbp-0x828]
+ cmp esi, dword ptr [rbp-0x838]
ja G_M37925_IG217
mov r10d, esi
- add r10, bword ptr [rbp-0x968]
- mov r11d, dword ptr [rbp-0x828]
+ add r10, bword ptr [rbp-0x978]
+ mov r11d, dword ptr [rbp-0x838]
sub r11d, esi
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x1C0], ymm0
vmovdqu ymmword ptr [rbp-0x1A0], ymm0
vmovdqu ymmword ptr [rbp-0x180], ymm0
vmovdqu ymmword ptr [rbp-0x160], ymm0
vmovdqu ymmword ptr [rbp-0x140], ymm0
vmovdqu ymmword ptr [rbp-0x120], ymm0
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x20], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rsi, r10
mov edx, r11d
lea rdi, [rbp-0x1C0]
mov ecx, 1
mov r9, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [r9]System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x1C0]
mov ecx, 24
rep movsq
- mov rbx, gword ptr [rbp-0x978]
+ mov rbx, gword ptr [rbp-0x988]
;; size=212 bbWeight=2 PerfScore 160.17
G_M37925_IG122:
lea rdi, bword ptr [rbp-0xE8]
lea rsi, bword ptr [rbp-0x280]
mov ecx, 24
rep movsq
lea rdi, bword ptr [r15+0x38]
- mov rsi, gword ptr [rbp-0x890]
+ mov rsi, gword ptr [rbp-0x8A0]
call CORINFO_HELP_CHECKED_ASSIGN_REF
lea rdi, bword ptr [r15+0x30]
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
mov rdi, qword ptr [rax+0xB8]
mov qword ptr [r15+0x94], rdi
- mov rcx, gword ptr [rbp-0x898]
+ mov rcx, gword ptr [rbp-0x8A8]
test rcx, rcx
setne dl
movzx rdx, dl
mov dword ptr [rbp-0xF4], edx
test edx, edx
je SHORT G_M37925_IG124
;; size=101 bbWeight=4 PerfScore 160.00
G_M37925_IG123:
lea rdi, bword ptr [r15+0x40]
mov rsi, rcx
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r13
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [rax]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
;; size=37 bbWeight=2 PerfScore 13.00
G_M37925_IG124:
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
cmp byte ptr [rax+0x9C], 0
jne G_M37925_IG137
;; size=20 bbWeight=4 PerfScore 20.00
G_M37925_IG125:
cmp byte ptr [rbp-0xC4], 0
je G_M37925_IG134
cmp byte ptr [rbp-0xC0], 5
jne SHORT G_M37925_IG126
lea rdi, [rbp-0xE8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=41 bbWeight=2 PerfScore 19.50
G_M37925_IG126:
movzx rdi, byte ptr [rbp-0xC0]
mov eax, edi
cmp eax, 1
je SHORT G_M37925_IG127
cmp eax, 3
jne G_M37925_IG139
;; size=24 bbWeight=2 PerfScore 7.50
G_M37925_IG127:
mov eax, dword ptr [rbp-0x90]
mov ecx, eax
cmp edi, 1
je SHORT G_M37925_IG128
cmp edi, 3
jne SHORT G_M37925_IG129
;; size=18 bbWeight=2 PerfScore 7.50
G_M37925_IG128:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG129:
- mov dword ptr [rbp-0x824], ecx
+ mov dword ptr [rbp-0x834], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M37925_IG130:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbp-0x90]
mov edi, ecx
movzx rsi, byte ptr [rbp-0xC0]
cmp esi, 1
je SHORT G_M37925_IG132
;; size=40 bbWeight=16 PerfScore 116.00
G_M37925_IG131:
cmp esi, 3
jne SHORT G_M37925_IG133
;; size=5 bbWeight=8 PerfScore 10.00
G_M37925_IG132:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M37925_IG133:
- mov ecx, dword ptr [rbp-0x824]
+ mov ecx, dword ptr [rbp-0x834]
cmp ecx, edi
jl SHORT G_M37925_IG130
jmp G_M37925_IG139
;; size=15 bbWeight=16 PerfScore 68.00
G_M37925_IG134:
- lea rdi, bword ptr [rbp-0x820]
+ lea rdi, bword ptr [rbp-0x830]
lea rsi, bword ptr [rbp-0xE8]
mov ecx, 24
rep movsq
mov esi, dword ptr [rbp-0x90]
mov eax, esi
movzx rdi, byte ptr [rbp-0xC0]
cmp edi, 1
je SHORT G_M37925_IG135
cmp edi, 3
jne SHORT G_M37925_IG136
;; size=48 bbWeight=2 PerfScore 62.00
G_M37925_IG135:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M37925_IG136:
lea rdi, [rbp-0xE8]
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M37925_IG139
lea rdi, bword ptr [rbp-0xE8]
- lea rsi, bword ptr [rbp-0x820]
+ lea rsi, bword ptr [rbp-0x830]
mov ecx, 24
rep movsq
jmp SHORT G_M37925_IG139
;; size=49 bbWeight=2 PerfScore 67.00
G_M37925_IG137:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0xF4], 0
jne SHORT G_M37925_IG138
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M37925_IG139
;; size=60 bbWeight=2 PerfScore 35.50
G_M37925_IG138:
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=32 bbWeight=2 PerfScore 10.50
G_M37925_IG139:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
xor rsi, rsi
mov gword ptr [rdi], rsi
;; size=15 bbWeight=4 PerfScore 10.00
G_M37925_IG140:
mov gword ptr [rdi+0x08], rsi
;; size=4 bbWeight=4 PerfScore 4.00
G_M37925_IG141:
mov gword ptr [rdi+0x10], rsi
mov byte ptr [rdi+0x58], 0
- mov rdi, qword ptr [rbp-0x858]
+ mov rdi, qword ptr [rbp-0x868]
inc edi
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp edi, dword ptr [rcx+0x30]
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rdx, rdi
jl G_M37925_IG152
;; size=43 bbWeight=4 PerfScore 38.00
G_M37925_IG142:
- mov rbx, gword ptr [rbp-0x870]
- mov r12, bword ptr [rbp-0x868]
- mov rax, gword ptr [rbp-0x878]
+ mov rbx, gword ptr [rbp-0x880]
+ mov r12, bword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
mov r14, gword ptr [rax+0x10]
xor rdi, rdi
mov gword ptr [rax+0x10], rdi
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=93 bbWeight=0.50 PerfScore 8.88
G_M37925_IG143:
mov rcx, gword ptr [rbx+0x40]
test rcx, rcx
je SHORT G_M37925_IG144
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M37925_IG144:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rcx, r14
- mov bword ptr [rbp-0x960], rcx
+ mov bword ptr [rbp-0x970], rcx
cmp dword ptr [rbx+0xF4], 0
jle SHORT G_M37925_IG145
mov rdi, gword ptr [rcx+0x48]
mov rdx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rdx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne G_M37925_IG151
- mov rsi, bword ptr [rbp-0x960]
+ mov rsi, bword ptr [rbp-0x970]
mov rsi, gword ptr [rsi+0x48]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=85 bbWeight=0.50 PerfScore 11.62
G_M37925_IG145:
mov rsi, 0xD1FFAB1E ; System.Int64
cmp qword ptr [r13], rsi
je SHORT G_M37925_IG147
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M37925_IG146:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int64
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=32 bbWeight=0.25 PerfScore 1.19
G_M37925_IG147:
mov rsi, qword ptr [r13+0x08]
mov qword ptr [r12], rsi
cmp gword ptr [r15+0x68], 0
je SHORT G_M37925_IG148
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
cmp dword ptr [rdi], edi
call [rcx]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=43 bbWeight=0.50 PerfScore 8.25
G_M37925_IG148:
cmp gword ptr [rax+0x28], 0
je SHORT G_M37925_IG149
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
cmp dword ptr [rdi], edi
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
;; size=28 bbWeight=0.50 PerfScore 6.25
G_M37925_IG149:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M37925_IG150:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M37925_IG151:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
jmp G_M37925_IG145
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M37925_IG152:
- mov rcx, gword ptr [rbp-0x880]
+ mov rcx, gword ptr [rbp-0x890]
jmp G_M37925_IG111
;; size=12 bbWeight=2 PerfScore 6.00
G_M37925_IG153:
cmp byte ptr [r15+0x8A], 0
jne SHORT G_M37925_IG154
cmp byte ptr [rbx+0x28], 1
jne G_M37925_IG218
mov byte ptr [r15+0x8A], 1
;; size=28 bbWeight=0.50 PerfScore 4.50
G_M37925_IG154:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M37925_IG157
cmp byte ptr [r15+0x8A], 2
jae SHORT G_M37925_IG157
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, rbx
mov rcx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
call [r8]System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
test eax, eax
je G_M37925_IG171
cmp byte ptr [r15+0x8D], 4
jne SHORT G_M37925_IG156
;; size=70 bbWeight=0.50 PerfScore 9.25
G_M37925_IG155:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ResolveReferenceId[long](byref):long
call [rax]System.Text.Json.JsonSerializer:ResolveReferenceId[long](byref):long
mov qword ptr [r12], rax
jmp G_M37925_IG149
;; size=24 bbWeight=0.50 PerfScore 3.25
G_M37925_IG156:
mov byte ptr [r15+0x8A], 2
- mov rax, gword ptr [rbp-0x860]
- mov r10, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=22 bbWeight=0.50 PerfScore 1.50
G_M37925_IG157:
test byte ptr [r15+0x8D], 8
je G_M37925_IG161
cmp byte ptr [r15+0x8E], 1
je G_M37925_IG161
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
call [r8]System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
- mov gword ptr [rbp-0x8A0], rax
+ mov gword ptr [rbp-0x8B0], rax
test rax, rax
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
je G_M37925_IG160
mov rdi, rax
mov rcx, qword ptr [rax]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov rdx, rax
lea r9, [rbp-0x100]
mov rsi, rbx
- mov rdi, gword ptr [rbp-0x8A0]
+ mov rdi, gword ptr [rbp-0x8B0]
mov rcx, r14
mov r8, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
call [rax]System.Text.Json.Serialization.JsonConverter:OnTryReadAsObject(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
mov r13d, eax
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int64
cmp qword ptr [rsi], rdi
je SHORT G_M37925_IG159
;; size=153 bbWeight=0.50 PerfScore 19.25
G_M37925_IG158:
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int64
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=29 bbWeight=0.25 PerfScore 1.12
G_M37925_IG159:
mov rdi, gword ptr [rbp-0x100]
mov rdi, qword ptr [rdi+0x08]
mov qword ptr [r12], rdi
lea rdi, bword ptr [r15+0x58]
lea r14, bword ptr [r15+0x60]
mov rsi, gword ptr [r15+0x60]
mov rbx, gword ptr [r15+0x58]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r14
mov rsi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
add r15, 48
xor edi, edi
mov esi, 2
test r13d, r13d
cmove edi, esi
mov byte ptr [r15+0x5E], dil
mov eax, r13d
jmp G_M37925_IG189
;; size=76 bbWeight=0.50 PerfScore 8.00
G_M37925_IG160:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M37925_IG161:
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M37925_IG162
xor rdi, rdi
jmp SHORT G_M37925_IG163
;; size=14 bbWeight=0.50 PerfScore 3.12
G_M37925_IG162:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M37925_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M37925_IG163:
test rdi, rdi
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
je G_M37925_IG167
mov rsi, r15
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rdx]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M37925_IG166
mov rsi, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M37925_IG164
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=66 bbWeight=0.50 PerfScore 9.12
G_M37925_IG164:
mov byte ptr [r15+0x8A], 4
lea rdi, bword ptr [r15+0x30]
mov rcx, rdi
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
- mov bword ptr [rbp-0x938], rcx
+ mov bword ptr [rbp-0x948], rcx
jle SHORT G_M37925_IG165
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x940], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x950], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x938]
+ mov rdi, bword ptr [rbp-0x948]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x940]
+ mov rsi, gword ptr [rbp-0x950]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M37925_IG04
;; size=125 bbWeight=0.50 PerfScore 11.62
G_M37925_IG165:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M37925_IG04
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M37925_IG166:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M37925_IG167:
cmp byte ptr [r15+0x8A], 3
jae G_M37925_IG173
cmp byte ptr [r15+0x8B], 0
je SHORT G_M37925_IG168
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
call [rax]System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=46 bbWeight=0.50 PerfScore 6.25
G_M37925_IG168:
cmp byte ptr [r15+0x8D], 4
je G_M37925_IG155
mov rax, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x948], rax
+ mov gword ptr [rbp-0x958], rax
cmp byte ptr [rax+0x103], 0
jne G_M37925_IG219
mov edi, dword ptr [rax+0xF0]
mov rdx, gword ptr [rax+0x08]
mov rdx, gword ptr [rdx+0x10]
cmp edi, dword ptr [rdx+0x10]
jne G_M37925_IG220
lea rdi, bword ptr [r15+0x30]
mov rdx, rdi
- mov bword ptr [rbp-0x950], rdx
+ mov bword ptr [rbp-0x960], rdx
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M37925_IG169
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x958], rax
- mov rcx, gword ptr [rbp-0x948]
+ mov gword ptr [rbp-0x968], rax
+ mov rcx, gword ptr [rbp-0x958]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x950]
+ mov rdi, bword ptr [rbp-0x960]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x958]
+ mov rsi, gword ptr [rbp-0x968]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=159 bbWeight=0.50 PerfScore 19.62
G_M37925_IG169:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
call [rax+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
mov byte ptr [r15+0x8A], 3
;; size=34 bbWeight=0.50 PerfScore 5.00
G_M37925_IG170:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
test eax, eax
jne SHORT G_M37925_IG174
;; size=28 bbWeight=0.50 PerfScore 2.75
G_M37925_IG171:
xor eax, eax
mov qword ptr [r12], rax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M37925_IG172:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M37925_IG173:
jmp SHORT G_M37925_IG170
;; size=2 bbWeight=0.25 PerfScore 0.50
G_M37925_IG174:
lea rdx, bword ptr [r15+0x30]
mov rbx, rdx
mov rsi, rbx
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
mov r13, rax
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:CreateObject(byref):System.Object:this
mov r13, rax
mov rsi, 0xD1FFAB1E ; System.Int64
cmp qword ptr [r13], rsi
je SHORT G_M37925_IG176
;; size=47 bbWeight=0.50 PerfScore 6.50
G_M37925_IG175:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int64
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M37925_IG176:
mov rdi, 0xD1FFAB1E ; System.Int64
call CORINFO_HELP_NEWSFAST
mov rdi, qword ptr [r13+0x08]
mov qword ptr [rax+0x08], rdi
mov r13, rax
test byte ptr [r15+0x8D], 2
je SHORT G_M37925_IG177
mov rdi, gword ptr [r15+0x08]
mov rsi, gword ptr [r15+0x10]
mov rdx, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Text.Json.Serialization.ReferenceResolver:AddReference(System.String,System.Object):this
xor rsi, rsi
mov gword ptr [r15+0x10], rsi
;; size=63 bbWeight=0.50 PerfScore 10.50
G_M37925_IG177:
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M37925_IG178
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M37925_IG178:
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp dword ptr [rcx+0x30], 0
jle G_M37925_IG182
xor r8d, r8d
;; size=20 bbWeight=0.50 PerfScore 2.62
G_M37925_IG179:
mov rsi, gword ptr [rcx+0x18]
mov rdx, rsi
cmp r8d, dword ptr [rdx+0x08]
jae G_M37925_IG192
lea rdi, [r8+2*r8]
mov r9, gword ptr [rdx+8*rdi+0x10]
- mov gword ptr [rbp-0x8A8], r9
- mov qword ptr [rbp-0x850], r8
+ mov gword ptr [rbp-0x8B8], r9
+ mov qword ptr [rbp-0x860], r8
cmp r8d, dword ptr [rsi+0x08]
jae G_M37925_IG192
lea rsi, bword ptr [rsi+8*rdi+0x10]
mov r10, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8B0], r10
+ mov gword ptr [rbp-0x8C0], r10
mov r11, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x8B8], r11
+ mov gword ptr [rbp-0x8C8], r11
test r11, r11
jne G_M37925_IG183
;; size=86 bbWeight=4 PerfScore 92.00
G_M37925_IG180:
test r10, r10
jne SHORT G_M37925_IG181
movsx rsi, byte ptr [r9+0x97]
;; size=13 bbWeight=2 PerfScore 10.50
G_M37925_IG181:
mov r11, gword ptr [r9+0x28]
mov rsi, r13
mov rdx, r10
mov rdi, gword ptr [r11+0x08]
call [r11+0x18]System.Action`2[System.__Canon,System.__Canon]:Invoke(System.__Canon,System.__Canon):this
mov rdi, rbx
- mov rax, gword ptr [rbp-0x8A8]
+ mov rax, gword ptr [rbp-0x8B8]
cmp byte ptr [rax+0x95], 0
je G_M37925_IG187
mov rdi, gword ptr [rdi+0x48]
mov ecx, dword ptr [rax+0x8C]
cmp ecx, dword ptr [rdi+0x10]
jae G_M37925_IG221
mov eax, 1
shlx esi, eax, ecx
mov rdx, gword ptr [rdi+0x08]
mov eax, ecx
sar eax, 5
cmp eax, dword ptr [rdx+0x08]
jae G_M37925_IG192
sar ecx, 5
mov eax, ecx
lea rdx, bword ptr [rdx+4*rax+0x10]
or dword ptr [rdx], esi
inc dword ptr [rdi+0x14]
jmp G_M37925_IG187
;; size=108 bbWeight=2 PerfScore 76.00
G_M37925_IG182:
- mov bword ptr [rbp-0x9A8], rbx
+ mov bword ptr [rbp-0x9C0], rbx
mov rax, rcx
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M37925_IG143
;; size=22 bbWeight=0.25 PerfScore 1.06
G_M37925_IG183:
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
mov rdi, r13
mov rsi, r9
mov rdx, r14
mov r12, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [r12]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
- mov rdi, gword ptr [rbp-0x8A8]
+ mov rdi, gword ptr [rbp-0x8B8]
mov rsi, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x28]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:GetValueAsObject(System.Object):System.Object:this
mov r12, rax
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFINTERFACE
call [rax]CORINFO_HELP_ISINSTANCEOFINTERFACE
- mov gword ptr [rbp-0x8C0], rax
+ mov gword ptr [rbp-0x8D0], rax
test rax, rax
je SHORT G_M37925_IG186
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
mov rsi, 0xD1FFAB1E ; System.Text.Json.JsonElement
- mov r12, gword ptr [rbp-0x8B0]
+ mov r12, gword ptr [rbp-0x8C0]
cmp qword ptr [r12], rsi
je SHORT G_M37925_IG185
;; size=120 bbWeight=2 PerfScore 51.50
G_M37925_IG184:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Text.Json.JsonElement
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
;; size=32 bbWeight=1 PerfScore 4.75
G_M37925_IG185:
mov rdx, gword ptr [r12+0x08]
mov rcx, qword ptr [r12+0x10]
mov rdi, rax
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
jmp SHORT G_M37925_IG187
;; size=42 bbWeight=2 PerfScore 23.00
G_M37925_IG186:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Object]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTINTERFACE
call [rax]CORINFO_HELP_CHKCASTINTERFACE
mov rdi, rax
- mov rdx, gword ptr [rbp-0x8B0]
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rdx, gword ptr [rbp-0x8C0]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
;; size=62 bbWeight=2 PerfScore 20.50
G_M37925_IG187:
- mov rdi, qword ptr [rbp-0x850]
+ mov rdi, qword ptr [rbp-0x860]
inc edi
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp edi, dword ptr [rax+0x30]
mov rcx, rax
mov r8, rdi
jl G_M37925_IG179
;; size=31 bbWeight=4 PerfScore 27.00
G_M37925_IG188:
mov r14, gword ptr [rcx+0x18]
xor rdi, rdi
mov gword ptr [rcx+0x18], rdi
mov rdi, 0xD1FFAB1E
mov esi, 128
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
- mov bword ptr [rbp-0x9A8], rbx
- mov rax, gword ptr [rbp-0x878]
- mov rbx, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rbx
+ mov rax, gword ptr [rbp-0x888]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M37925_IG143
;; size=91 bbWeight=0.50 PerfScore 9.38
G_M37925_IG189:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M37925_IG190:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M37925_IG191:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M37925_IG192:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M37925_IG193:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M37925_IG194
mov rax, gword ptr [rdi+0x28]
jmp SHORT G_M37925_IG195
;; size=22 bbWeight=0 PerfScore 0.00
G_M37925_IG194:
mov rax, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M37925_IG195:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rax+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M37925_IG198
mov r15, r14
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M37925_IG196
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M37925_IG197
;; size=97 bbWeight=0 PerfScore 0.00
G_M37925_IG196:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M37925_IG197:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M37925_IG198:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M37925_IG199
lea rdi, bword ptr [rbp-0x420]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x420]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M37925_IG212
;; size=67 bbWeight=0 PerfScore 0.00
G_M37925_IG199:
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M37925_IG200
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M37925_IG201
;; size=47 bbWeight=0 PerfScore 0.00
G_M37925_IG200:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M37925_IG201:
lea rdi, bword ptr [r14+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M37925_IG212
;; size=14 bbWeight=0 PerfScore 0.00
G_M37925_IG202:
mov rsi, gword ptr [rdi+0xB0]
mov rdi, gword ptr [rsi+0x20]
- mov rbx, gword ptr [rbp-0x918]
+ mov rbx, gword ptr [rbp-0x928]
mov rsi, gword ptr [rbx+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=38 bbWeight=0 PerfScore 0.00
G_M37925_IG203:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M37925_IG204
mov rdx, gword ptr [rdi+0x28]
jmp SHORT G_M37925_IG205
;; size=22 bbWeight=0 PerfScore 0.00
G_M37925_IG204:
mov rdx, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M37925_IG205:
- mov rdi, bword ptr [rbp-0x990]
- mov esi, dword ptr [rbp-0x83C]
+ mov rdi, bword ptr [rbp-0x9A0]
+ mov esi, dword ptr [rbp-0x84C]
mov rdx, gword ptr [rdx+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M37925_IG208
mov r15, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M37925_IG206
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M37925_IG207
;; size=90 bbWeight=0 PerfScore 0.00
G_M37925_IG206:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M37925_IG207:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M37925_IG208:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M37925_IG209
lea rdi, bword ptr [rbp-0x678]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x678]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp SHORT G_M37925_IG212
;; size=64 bbWeight=0 PerfScore 0.00
G_M37925_IG209:
mov rbx, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M37925_IG210
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M37925_IG211
;; size=50 bbWeight=0 PerfScore 0.00
G_M37925_IG210:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M37925_IG211:
lea rdi, bword ptr [rbx+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=9 bbWeight=0 PerfScore 0.00
G_M37925_IG212:
mov edi, 0x1979
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=51 bbWeight=0 PerfScore 0.00
G_M37925_IG213:
mov edi, 9
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException(int)
call [rax]System.ThrowHelper:ThrowArgumentException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M37925_IG214:
mov rdi, r10
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
call [rax]System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
int3
;; size=16 bbWeight=0 PerfScore 0.00
G_M37925_IG215:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M37925_IG216:
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M37925_IG217:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M37925_IG218:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M37925_IG219:
mov rdi, gword ptr [rax+0xB0]
mov rdi, gword ptr [rdi+0x20]
mov rsi, gword ptr [rax+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=31 bbWeight=0 PerfScore 0.00
G_M37925_IG220:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M37925_IG221:
mov edi, ecx
mov rax, 0xD1FFAB1E ; code for System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
call [rax]System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
int3
;; size=15 bbWeight=0 PerfScore 0.00
-; Total bytes of code 8441, prolog size 93, PerfScore 4050.73, instruction count 1813, allocated bytes for code 8441 (MethodHash=be3d6bda) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)
+; Total bytes of code 8303, prolog size 76, PerfScore 3833.48, instruction count 1773, allocated bytes for code 8303 (MethodHash=be3d6bda) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[long]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)
-138 (-1.63 % of base) - System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
; Assembly listing for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):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; 173 single block inlinees; 71 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T36] ( 17, 15.50) ref -> r13 this class-hnd single-def <System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]>
; V01 arg1 [V01,T00] ( 72,238.50) byref -> rbx single-def
-; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x860] class-hnd single-def <System.Type>
+; V02 arg2 [V02,T157] ( 3, 2.50) ref -> [rbp-0x870] class-hnd single-def <System.Type>
; V03 arg3 [V03,T18] ( 14, 24.50) ref -> r14 class-hnd single-def <System.Text.Json.JsonSerializerOptions>
; V04 arg4 [V04,T01] ( 81, 86 ) byref -> r15 single-def
-; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x868] single-def
-; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x870] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V05 arg5 [V05,T114] ( 8, 5 ) byref -> [rbp-0x878] single-def
+; V06 loc0 [V06,T68] ( 19, 10.50) ref -> [rbp-0x880] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V07 loc1 [V07,T39] ( 15, 16.25) ref -> r13 class-hnd <System.Object>
-; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x878] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
+; V08 loc2 [V08,T38] ( 12, 16.50) ref -> [rbp-0x888] class-hnd exact spill-single-def <System.Text.Json.ArgumentState>
;* V09 loc3 [V09 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ubyte]>
;* V10 loc4 [V10 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Buffers.ReadOnlySequence`1[ubyte]>
; V11 loc5 [V11,T67] ( 9, 10.75) ref -> r13 class-hnd single-def <System.Object>
; V12 loc6 [V12 ] ( 17, 78 ) struct (192) [rbp-0xE8] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.Json.Utf8JsonReader>
-; V13 loc7 [V13,T54] ( 4, 12.50) ref -> [rbp-0x880] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V13 loc7 [V13,T55] ( 4, 12.50) ref -> [rbp-0x890] class-hnd exact spill-single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V14 loc8 [V14,T229] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V15 loc9 [V15,T238] ( 0, 0 ) int -> zero-ref
-; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x888] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V16 loc10 [V16,T20] ( 8, 24 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V17 loc11 [V17,T31] ( 9, 18 ) long -> [rbp-0xF0] spill-single-def
-; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x890] class-hnd spill-single-def <ubyte[]>
-; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x898] class-hnd spill-single-def <System.String>
+; V18 loc12 [V18,T97] ( 2, 8 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <ubyte[]>
+; V19 loc13 [V19,T73] ( 3, 10 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.String>
; V20 loc14 [V20,T75] ( 3, 10 ) ubyte -> [rbp-0xF4] spill-single-def
-; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8A0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
+; V21 loc15 [V21,T190] ( 6, 3 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Text.Json.Serialization.JsonConverter>
; V22 loc16 [V22,T222] ( 3, 1.50) ubyte -> r13
; V23 loc17 [V23 ] ( 4, 1.75) ref -> [rbp-0x100] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object>
; V24 loc18 [V24,T230] ( 2, 1 ) ref -> rsi class-hnd single-def <System.Object>
; V25 loc19 [V25,T231] ( 2, 1 ) ref -> r14 class-hnd exact single-def <System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String][]>
;* V26 loc20 [V26,T239] ( 0, 0 ) int -> zero-ref
-; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8A8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8B0] class-hnd spill-single-def <System.Object>
-; V29 loc23 [V29,T56] ( 4, 12 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.String>
+; V27 loc21 [V27,T32] ( 8, 18 ) ref -> [rbp-0x8B8] class-hnd spill-single-def <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V28 loc22 [V28,T37] ( 8, 17 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Object>
+; V29 loc23 [V29,T57] ( 4, 12 ) ref -> [rbp-0x8C8] class-hnd spill-single-def <System.String>
;* V30 loc24 [V30 ] ( 0, 0 ) short -> zero-ref ld-addr-op
; V31 loc25 [V31,T115] ( 3, 6 ) ref -> r12 class-hnd <System.Object>
-; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8C0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
+; V32 loc26 [V32,T116] ( 3, 6 ) ref -> [rbp-0x8D0] class-hnd spill-single-def <System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]>
; V33 OutArgs [V33 ] ( 1, 1 ) struct (80) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V34 tmp1 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V35 tmp2 [V35 ] ( 0, 0 ) ref -> zero-ref single-def
; V36 tmp3 [V36,T223] ( 2, 1 ) int -> rax
; V37 tmp4 [V37,T186] ( 4, 3.50) ref -> r13 single-def "inline UNBOX clone1"
; V38 tmp5 [V38,T191] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" <System.Int16>
; V39 tmp6 [V39,T160] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V40 tmp7 [V40 ] ( 0, 0 ) ref -> zero-ref single-def
; V41 tmp8 [V41,T161] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V42 tmp9 [V42 ] ( 0, 0 ) ref -> zero-ref single-def
; V43 tmp10 [V43,T162] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V44 tmp11 [V44 ] ( 0, 0 ) ref -> zero-ref single-def
;* V45 tmp12 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "dup spill" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
;* V46 tmp13 [V46 ] ( 0, 0 ) ref -> zero-ref single-def
; V47 tmp14 [V47,T224] ( 2, 1 ) int -> rax
; V48 tmp15 [V48,T187] ( 4, 3.50) ref -> rbx single-def "inline UNBOX clone1"
; V49 tmp16 [V49,T192] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Single-def Box Helper" <System.Int16>
; V50 tmp17 [V50,T163] ( 4, 4 ) ref -> rax class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V51 tmp18 [V51 ] ( 0, 0 ) ref -> zero-ref single-def
; V52 tmp19 [V52 ] ( 3, 12 ) struct (192) [rbp-0x1C0] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V53 tmp20 [V53 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
; V54 tmp21 [V54,T93] ( 3, 8 ) struct (192) [rbp-0x280] do-not-enreg[S] must-init <System.Text.Json.Utf8JsonReader>
;* V55 tmp22 [V55 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
; V56 tmp23 [V56 ] ( 3, 12 ) struct (192) [rbp-0x340] do-not-enreg[XS] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Text.Json.Utf8JsonReader>
;* V57 tmp24 [V57 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Buffers.ReadOnlySequence`1[ubyte]>
; V58 tmp25 [V58,T206] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
; V59 tmp26 [V59,T164] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V60 tmp27 [V60 ] ( 0, 0 ) ref -> zero-ref single-def
;* V61 tmp28 [V61 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V62 tmp29 [V62,T165] ( 4, 4 ) ref -> rcx class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V63 tmp30 [V63 ] ( 0, 0 ) ref -> zero-ref single-def
;* V64 tmp31 [V64 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V65 tmp32 [V65 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V66 tmp33 [V66 ] ( 2, 8 ) ubyte -> [rbp-0x348] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V67 tmp34 [V67,T50] ( 5, 14 ) ref -> [rbp-0x8C8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8D0] spill-single-def "Inlining Arg"
-; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8D8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V67 tmp34 [V67,T51] ( 5, 14 ) ref -> [rbp-0x8D8] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V68 tmp35 [V68,T208] ( 2, 2 ) byref -> [rbp-0x8E0] spill-single-def "Inlining Arg"
+; V69 tmp36 [V69,T193] ( 3, 3 ) ref -> [rbp-0x8E8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V70 tmp37 [V70 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V71 tmp38 [V71 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V72 tmp39 [V72 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V73 tmp40 [V73 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V74 tmp41 [V74 ] ( 2, 4 ) struct (24) [rbp-0x360] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V75 tmp42 [V75 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V76 tmp43 [V76 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V77 tmp44 [V77 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V78 tmp45 [V78,T40] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V79 tmp46 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V80 tmp47 [V80,T117] ( 3, 6 ) ref -> rcx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V81 tmp48 [V81,T41] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V82 tmp49 [V82 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V83 tmp50 [V83,T242] ( 3, 0 ) ref -> rax class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V84 tmp51 [V84,T240] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V85 tmp52 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V86 tmp53 [V86,T252] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V87 tmp54 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V88 tmp55 [V88,T243] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V89 tmp56 [V89,T244] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V90 tmp57 [V90,T253] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V91 tmp58 [V91 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V92 tmp59 [V92,T266] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V93 tmp60 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V94 tmp61 [V94,T254] ( 2, 0 ) byref -> r14 "impAppendStmt"
; V95 tmp62 [V95 ] ( 2, 0 ) struct (192) [rbp-0x420] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V96 tmp63 [V96,T255] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V97 tmp64 [V97 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V98 tmp65 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V99 tmp66 [V99,T245] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V100 tmp67 [V100,T246] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V101 tmp68 [V101,T256] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V102 tmp69 [V102 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V103 tmp70 [V103,T267] ( 2, 0 ) long -> rdx "Inlining Arg"
; V104 tmp71 [V104,T65] ( 2, 12 ) ubyte -> [rbp-0x424] spill-single-def "Inlining Arg"
;* V105 tmp72 [V105 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V106 tmp73 [V106 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V107 tmp74 [V107,T168] ( 2, 4 ) struct (192) [rbp-0x4E8] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V108 tmp75 [V108 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V109 tmp76 [V109,T124] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V110 tmp77 [V110,T169] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V111 tmp78 [V111,T33] ( 2, 18 ) int -> [rbp-0x4EC] spill-single-def "Inline stloc first use temp"
;* V112 tmp79 [V112 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V113 tmp80 [V113 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V114 tmp81 [V114 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V115 tmp82 [V115,T125] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V116 tmp83 [V116,T126] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V117 tmp84 [V117,T170] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V118 tmp85 [V118 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V119 tmp86 [V119,T06] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V120 tmp87 [V120,T07] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V121 tmp88 [V121,T47] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V121 tmp88 [V121,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V122 tmp89 [V122 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V123 tmp90 [V123,T127] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V124 tmp91 [V124,T128] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V125 tmp92 [V125,T171] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V126 tmp93 [V126 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V127 tmp94 [V127,T02] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V128 tmp95 [V128,T194] ( 3, 3 ) byref -> rbx single-def "Inlining Arg"
;* V129 tmp96 [V129 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
;* V130 tmp97 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
; V131 tmp98 [V131,T156] ( 5, 5 ) byref -> rsi single-def "Inlining Arg"
; V132 tmp99 [V132,T225] ( 3, 1.50) long -> rdi "Inline return value spill temp"
; V133 tmp100 [V133,T219] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8E0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
+; V134 tmp101 [V134,T220] ( 3, 1.50) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Object>
; V135 tmp102 [V135,T226] ( 3, 1.50) int -> [rbp-0x4F0] spill-single-def "Inline stloc first use temp"
; V136 tmp103 [V136,T227] ( 3, 1.50) int -> [rbp-0x4F4] spill-single-def "Inline stloc first use temp"
-; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8E8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
+; V137 tmp104 [V137,T232] ( 2, 1 ) ref -> [rbp-0x8F8] class-hnd spill-single-def "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V138 tmp105 [V138 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V139 tmp106 [V139 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V140 tmp107 [V140 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V141 tmp108 [V141 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V142 tmp109 [V142 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V143 tmp110 [V143,T107] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V144 tmp111 [V144 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
; V145 tmp112 [V145 ] ( 4, 12.50) ref -> [rbp-0x500] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
; V146 tmp113 [V146 ] ( 1, 4 ) ubyte -> [rbp-0x508] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x8F0] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x8F8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
+; V147 tmp114 [V147,T74] ( 3, 10 ) ref -> [rbp-0x900] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
+; V148 tmp115 [V148,T25] ( 10, 20 ) ref -> [rbp-0x908] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Text.Json.ArgumentState>
; V149 tmp116 [V149,T88] ( 4, 8 ) int -> [rbp-0x50C] spill-single-def "Inline stloc first use temp"
-; V150 tmp117 [V150,T57] ( 3, 12 ) ref -> [rbp-0x900] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V150 tmp117 [V150,T58] ( 3, 12 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "impAppendStmt" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V151 tmp118 [V151,T108] ( 2, 8 ) struct (56) [rbp-0x548] do-not-enreg[HS] must-init hidden-struct-arg "impAppendStmt" <System.Text.Json.JsonReaderState>
; V152 tmp119 [V152,T30] ( 5, 20 ) struct (88) [rbp-0x5A0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]>
-; V153 tmp120 [V153,T55] ( 6, 12 ) ref -> [rbp-0x908] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
-; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x910] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V153 tmp120 [V153,T56] ( 6, 12 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V154 tmp121 [V154,T166] ( 2, 4 ) ref -> [rbp-0x920] class-hnd exact spill-single-def "Inline stloc first use temp" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
; V155 tmp122 [V155,T98] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]>
;* V156 tmp123 [V156 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x918] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V157 tmp124 [V157,T188] ( 8, 3 ) ref -> [rbp-0x928] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V158 tmp125 [V158 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V159 tmp126 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V160 tmp127 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V161 tmp128 [V161 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V162 tmp129 [V162 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x920] spill-single-def "Inlining Arg"
-; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x928] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V163 tmp130 [V163,T209] ( 2, 2 ) byref -> [rbp-0x930] spill-single-def "Inlining Arg"
+; V164 tmp131 [V164,T195] ( 3, 3 ) ref -> [rbp-0x938] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V165 tmp132 [V165 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V166 tmp133 [V166 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V167 tmp134 [V167 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V168 tmp135 [V168 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V169 tmp136 [V169 ] ( 2, 4 ) struct (24) [rbp-0x5B8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V170 tmp137 [V170 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
;* V171 tmp138 [V171 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V172 tmp139 [V172 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
; V173 tmp140 [V173,T42] ( 4, 16 ) ref -> rax class-hnd "Inlining Arg" <ubyte[]>
;* V174 tmp141 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V175 tmp142 [V175,T118] ( 3, 6 ) ref -> r10 class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V176 tmp143 [V176,T43] ( 4, 16 ) byref -> rdi "Inlining Arg"
;* V177 tmp144 [V177 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V178 tmp145 [V178,T247] ( 3, 0 ) ref -> rdx class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V179 tmp146 [V179,T241] ( 4, 0 ) byref -> rdi "Inlining Arg"
;* V180 tmp147 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V181 tmp148 [V181,T257] ( 2, 0 ) byref -> r15 "impAppendStmt"
;* V182 tmp149 [V182 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
; V183 tmp150 [V183,T248] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V184 tmp151 [V184,T249] ( 3, 0 ) ref -> r14 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V185 tmp152 [V185,T258] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V186 tmp153 [V186 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V187 tmp154 [V187,T268] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V188 tmp155 [V188 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V189 tmp156 [V189,T259] ( 2, 0 ) byref -> rbx "impAppendStmt"
; V190 tmp157 [V190 ] ( 2, 0 ) struct (192) [rbp-0x678] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
; V191 tmp158 [V191,T260] ( 2, 0 ) byref -> r14 "impAppendStmt"
;* V192 tmp159 [V192 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V193 tmp160 [V193 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V194 tmp161 [V194,T250] ( 3, 0 ) ref -> rsi class-hnd "Inline return value spill temp" <ubyte[]>
; V195 tmp162 [V195,T251] ( 3, 0 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <ubyte[]>
; V196 tmp163 [V196,T261] ( 2, 0 ) byref -> rdi "Inlining Arg"
;* V197 tmp164 [V197 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V198 tmp165 [V198,T269] ( 2, 0 ) long -> rdx "Inlining Arg"
;* V199 tmp166 [V199 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V200 tmp167 [V200 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V201 tmp168 [V201,T76] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V202 tmp169 [V202,T77] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V203 tmp170 [V203,T172] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V204 tmp171 [V204,T03] ( 5, 40 ) byref -> rsi "Inlining Arg"
;* V205 tmp172 [V205 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V206 tmp173 [V206,T46] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
+; V206 tmp173 [V206,T47] ( 2, 16 ) ref -> rdi class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonParameterInfo>
;* V207 tmp174 [V207 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V208 tmp175 [V208,T173] ( 2, 4 ) struct (192) [rbp-0x738] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V209 tmp176 [V209 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V210 tmp177 [V210,T129] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V211 tmp178 [V211,T174] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V212 tmp179 [V212,T34] ( 2, 18 ) int -> [rbp-0x73C] spill-single-def "Inline stloc first use temp"
;* V213 tmp180 [V213 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V214 tmp181 [V214 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V215 tmp182 [V215 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V216 tmp183 [V216,T130] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V217 tmp184 [V217,T131] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V218 tmp185 [V218,T175] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V219 tmp186 [V219 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V220 tmp187 [V220,T08] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V221 tmp188 [V221,T09] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V222 tmp189 [V222,T48] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V222 tmp189 [V222,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V223 tmp190 [V223 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V224 tmp191 [V224,T132] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V225 tmp192 [V225,T133] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V226 tmp193 [V226,T176] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V227 tmp194 [V227,T16] ( 4, 32 ) byref -> rdi "Inlining Arg"
; V228 tmp195 [V228,T17] ( 4, 32 ) byref -> rsi "Inlining Arg"
;* V229 tmp196 [V229 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V230 tmp197 [V230 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonPropertyInfo]>
;* V231 tmp198 [V231 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
; V232 tmp199 [V232,T134] ( 3, 6 ) int -> rsi "Inline return value spill temp"
; V233 tmp200 [V233,T62] ( 3, 12 ) int -> rsi "Inlining Arg"
-; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x930] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
+; V234 tmp201 [V234,T28] ( 5, 20 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "Inlining Arg" <System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String][]>
;* V235 tmp202 [V235 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
; V236 tmp203 [V236,T135] ( 2, 4 ) int -> rdi "Inline return value spill temp"
;* V237 tmp204 [V237 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V238 tmp205 [V238,T136] ( 3, 6 ) int -> rdi "Inline stloc first use temp"
; V239 tmp206 [V239,T99] ( 2, 8 ) byref -> rdi "Inlining Arg"
-; V240 tmp207 [V240,T109] ( 2, 8 ) long -> rdx "Inlining Arg"
-; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rcx class-hnd "Inlining Arg" <ubyte[]>
-; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rdi class-hnd exact "Inlining Arg" <System.String>
+; V240 tmp207 [V240,T109] ( 2, 8 ) long -> [rbp-0x748] spill-single-def "Inlining Arg"
+; V241 tmp208 [V241,T100] ( 2, 8 ) ref -> rdi class-hnd "Inlining Arg" <ubyte[]>
+; V242 tmp209 [V242,T101] ( 2, 8 ) ref -> rsi class-hnd exact "Inlining Arg" <System.String>
;* V243 tmp210 [V243 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V244 tmp211 [V244 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V245 tmp212 [V245,T78] ( 3, 10 ) int -> rax "Inline stloc first use temp"
; V246 tmp213 [V246,T79] ( 3, 10 ) ubyte -> rdi "Inline stloc first use temp"
;* V247 tmp214 [V247,T177] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V248 tmp215 [V248,T04] ( 5, 40 ) byref -> rsi "Inlining Arg"
; V249 tmp216 [V249,T94] ( 3, 8 ) long -> registers "Inline return value spill temp"
;* V250 tmp217 [V250 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V251 tmp218 [V251 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
-; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x740] spill-single-def "Inline stloc first use temp"
+; V252 tmp219 [V252,T95] ( 3, 8 ) int -> [rbp-0x74C] spill-single-def "Inline stloc first use temp"
; V253 tmp220 [V253,T96] ( 3, 8 ) int -> rbx "Inline stloc first use temp"
;* V254 tmp221 [V254,T216] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V255 tmp222 [V255 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V256 tmp223 [V256 ] ( 0, 0 ) long -> zero-ref "impAppendStmt"
;* V257 tmp224 [V257 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V258 tmp225 [V258 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x758] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
+; V259 tmp226 [V259,T72] ( 5, 10 ) struct (24) [rbp-0x768] do-not-enreg[S] must-init "Inline return value spill temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V260 tmp227 [V260 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.SequencePosition>
;* V261 tmp228 [V261 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.SequencePosition>
;* V262 tmp229 [V262 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
;* V263 tmp230 [V263 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object>
; V264 tmp231 [V264,T89] ( 4, 8 ) int -> rbx "Inline stloc first use temp"
-; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x75C] spill-single-def "Inline stloc first use temp"
+; V265 tmp232 [V265,T137] ( 3, 6 ) int -> [rbp-0x76C] spill-single-def "Inline stloc first use temp"
;* V266 tmp233 [V266 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.SequencePosition>
;* V267 tmp234 [V267,T217] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Buffers.ReadOnlySequenceSegment`1[ubyte]>
;* V268 tmp235 [V268 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlyMemory`1[ubyte]>
; V269 tmp236 [V269,T90] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V270 tmp237 [V270 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.SequencePosition>
;* V271 tmp238 [V271 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V272 tmp239 [V272 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V273 tmp240 [V273 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V274 tmp241 [V274 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Object>
;* V275 tmp242 [V275 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Buffers.ReadOnlySequence`1[ubyte]>
;* V276 tmp243 [V276 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Object>
; V277 tmp244 [V277,T110] ( 2, 8 ) int -> r10 "Inlining Arg"
;* V278 tmp245 [V278 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V279 tmp246 [V279,T45] ( 4, 16 ) int -> rsi "Inlining Arg"
+; V279 tmp246 [V279,T46] ( 4, 16 ) int -> rsi "Inlining Arg"
;* V280 tmp247 [V280 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V281 tmp248 [V281,T102] ( 2, 8 ) byref -> r10 "Inlining Arg"
; V282 tmp249 [V282,T111] ( 2, 8 ) int -> r11 "Inlining Arg"
;* V283 tmp250 [V283 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V284 tmp251 [V284 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x820] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
+; V285 tmp252 [V285,T178] ( 2, 4 ) struct (192) [rbp-0x830] do-not-enreg[S] must-init "Inline stloc first use temp" <System.Text.Json.Utf8JsonReader>
;* V286 tmp253 [V286 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V287 tmp254 [V287,T138] ( 3, 6 ) ubyte -> rax "Inline stloc first use temp"
;* V288 tmp255 [V288,T179] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x824] spill-single-def "Inline stloc first use temp"
+; V289 tmp256 [V289,T35] ( 2, 18 ) int -> [rbp-0x834] spill-single-def "Inline stloc first use temp"
;* V290 tmp257 [V290 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V291 tmp258 [V291 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V292 tmp259 [V292 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V293 tmp260 [V293,T139] ( 3, 6 ) int -> rcx "Inline stloc first use temp"
; V294 tmp261 [V294,T140] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V295 tmp262 [V295,T180] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V296 tmp263 [V296 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V297 tmp264 [V297,T10] ( 3, 40 ) int -> rdi "Inline stloc first use temp"
; V298 tmp265 [V298,T11] ( 3, 40 ) ubyte -> rsi "Inline stloc first use temp"
-;* V299 tmp266 [V299,T49] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V299 tmp266 [V299,T50] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V300 tmp267 [V300 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.Text.Json.BitStack>
; V301 tmp268 [V301,T141] ( 3, 6 ) int -> rax "Inline stloc first use temp"
; V302 tmp269 [V302,T142] ( 3, 6 ) ubyte -> rdi "Inline stloc first use temp"
;* V303 tmp270 [V303,T181] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V304 tmp271 [V304 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V305 tmp272 [V305,T05] ( 5, 40 ) byref -> rdi "Inlining Arg"
; V306 tmp273 [V306,T233] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
; V307 tmp274 [V307,T234] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
; V308 tmp275 [V308,T210] ( 2, 2 ) byref -> r14 single-def "impAppendStmt"
; V309 tmp276 [V309,T235] ( 2, 1 ) ref -> rbx class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V310 tmp277 [V310 ] ( 0, 0 ) byref -> zero-ref
; V311 tmp278 [V311,T236] ( 2, 1 ) byref -> r15 single-def
; V312 tmp279 [V312,T237] ( 2, 1 ) int -> rdi
; V313 tmp280 [V313,T207] ( 4, 2 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.Metadata.JsonPropertyInfo>
-; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x938] single-def "Inlining Arg"
-; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x940] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V314 tmp281 [V314,T211] ( 2, 2 ) byref -> [rbp-0x948] single-def "Inlining Arg"
+; V315 tmp282 [V315,T196] ( 3, 3 ) ref -> [rbp-0x950] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V316 tmp283 [V316 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x948] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
+; V317 tmp284 [V317,T189] ( 8, 3 ) ref -> [rbp-0x958] class-hnd spill-single-def "Inline stloc first use temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo>
;* V318 tmp285 [V318 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V319 tmp286 [V319 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver>
;* V320 tmp287 [V320 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonSerializerOptions>
;* V321 tmp288 [V321 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.Json.JsonPropertyDictionary`1[System.Text.Json.Serialization.Metadata.JsonParameterInfo]>
;* V322 tmp289 [V322 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x950] spill-single-def "Inlining Arg"
-; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x958] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
+; V323 tmp290 [V323,T212] ( 2, 2 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V324 tmp291 [V324,T197] ( 3, 3 ) ref -> [rbp-0x968] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.BitArray>
;* V325 tmp292 [V325 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V326 tmp293 [V326,T103] ( 2, 8 ) byref -> rdi "Inlining Arg"
; V327 tmp294 [V327,T29] ( 5, 20 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Collections.BitArray>
; V328 tmp295 [V328,T27] ( 6, 20 ) int -> rcx "Inlining Arg"
; V329 tmp296 [V329,T182] ( 2, 4 ) int -> rsi "Inline stloc first use temp"
; V330 tmp297 [V330,T119] ( 3, 6 ) byref -> rdx "Inline stloc first use temp"
-; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x960] spill-single-def "Inlining Arg"
+; V331 tmp298 [V331,T198] ( 3, 3 ) byref -> [rbp-0x970] spill-single-def "Inlining Arg"
; V332 tmp299 [V332,T202] ( 3, 3 ) int -> rax "Single return block return value"
-; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x968] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
-; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x828] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
-; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x970] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
-; V336 tmp303 [V336,T53] ( 6, 12.50) ref -> [rbp-0x978] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
-; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x82C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
-; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x830] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
+; V333 tmp300 [V333,T205] ( 2, 2.50) byref -> [rbp-0x978] spill-single-def "field V09._reference (fldOffset=0x0)" P-INDEP
+; V334 tmp301 [V334,T158] ( 3, 4.50) int -> [rbp-0x838] spill-single-def "field V09._length (fldOffset=0x8)" P-INDEP
+; V335 tmp302 [V335,T23] ( 10, 20.50) ref -> [rbp-0x980] spill-single-def "field V10._startObject (fldOffset=0x0)" P-INDEP
+; V336 tmp303 [V336,T54] ( 6, 12.50) ref -> [rbp-0x988] spill-single-def "field V10._endObject (fldOffset=0x8)" P-INDEP
+; V337 tmp304 [V337,T69] ( 5, 10.50) int -> [rbp-0x83C] spill-single-def "field V10._startInteger (fldOffset=0x10)" P-INDEP
+; V338 tmp305 [V338,T82] ( 4, 8.50) int -> [rbp-0x840] spill-single-def "field V10._endInteger (fldOffset=0x14)" P-INDEP
;* V339 tmp306 [V339 ] ( 0, 0 ) byref -> zero-ref "field V53._reference (fldOffset=0x0)" P-INDEP
;* V340 tmp307 [V340 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
;* V341 tmp308 [V341 ] ( 0, 0 ) byref -> zero-ref "field V65._reference (fldOffset=0x0)" P-INDEP
;* V342 tmp309 [V342 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V343 tmp310 [V343 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V344 tmp311 [V344 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x980] "field V73._reference (fldOffset=0x0)" P-INDEP
-; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x834] "field V73._length (fldOffset=0x8)" P-INDEP
+; V345 tmp312 [V345,T71] ( 7, 10 ) byref -> [rbp-0x990] "field V73._reference (fldOffset=0x0)" P-INDEP
+; V346 tmp313 [V346,T70] ( 11, 10 ) int -> [rbp-0x844] "field V73._length (fldOffset=0x8)" P-INDEP
; V347 tmp314 [V347,T85] ( 4, 8 ) byref -> rax "field V75._reference (fldOffset=0x0)" P-INDEP
; V348 tmp315 [V348,T91] ( 4, 8 ) int -> rcx "field V75._length (fldOffset=0x8)" P-INDEP
;* V349 tmp316 [V349 ] ( 0, 0 ) byref -> zero-ref "field V76._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp317 [V350 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
;* V351 tmp318 [V351 ] ( 0, 0 ) byref -> zero-ref "field V77._reference (fldOffset=0x0)" P-DEP
;* V352 tmp319 [V352 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-DEP
; V353 tmp320 [V353,T120] ( 3, 6 ) byref -> registers "field V79._reference (fldOffset=0x0)" P-INDEP
; V354 tmp321 [V354,T143] ( 3, 6 ) int -> registers "field V79._length (fldOffset=0x8)" P-INDEP
;* V355 tmp322 [V355 ] ( 0, 0 ) byref -> zero-ref "field V85._reference (fldOffset=0x0)" P-INDEP
;* V356 tmp323 [V356 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V357 tmp324 [V357 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp325 [V358 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
;* V359 tmp326 [V359 ] ( 0, 0 ) ref -> zero-ref "field V114._array (fldOffset=0x0)" P-INDEP
;* V360 tmp327 [V360 ] ( 0, 0 ) long -> zero-ref "field V114._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V361 tmp328 [V361,T144] ( 3, 6 ) int -> rax "field V114._currentDepth (fldOffset=0x10)" P-INDEP
;* V362 tmp329 [V362 ] ( 0, 0 ) ref -> zero-ref "field V118._array (fldOffset=0x0)" P-INDEP
;* V363 tmp330 [V363 ] ( 0, 0 ) long -> zero-ref "field V118._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V364 tmp331 [V364,T12] ( 3, 40 ) int -> rcx "field V118._currentDepth (fldOffset=0x10)" P-INDEP
;* V365 tmp332 [V365 ] ( 0, 0 ) ref -> zero-ref "field V122._array (fldOffset=0x0)" P-INDEP
;* V366 tmp333 [V366 ] ( 0, 0 ) long -> zero-ref "field V122._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V367 tmp334 [V367,T145] ( 3, 6 ) int -> rsi "field V122._currentDepth (fldOffset=0x10)" P-INDEP
; V368 tmp335 [V368,T221] ( 3, 1.50) byref -> rax "field V129._reference (fldOffset=0x0)" P-INDEP
; V369 tmp336 [V369,T228] ( 3, 1.50) int -> rdx "field V129._length (fldOffset=0x8)" P-INDEP
;* V370 tmp337 [V370 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
;* V371 tmp338 [V371 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
;* V372 tmp339 [V372 ] ( 0, 0 ) byref -> zero-ref "field V144._reference (fldOffset=0x0)" P-INDEP
;* V373 tmp340 [V373 ] ( 0, 0 ) int -> zero-ref "field V144._length (fldOffset=0x8)" P-INDEP
-; V374 tmp341 [V374,T51] ( 4, 14 ) byref -> [rbp-0x988] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
-; V375 tmp342 [V375,T52] ( 4, 14 ) int -> [rbp-0x838] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
-; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x990] "field V168._reference (fldOffset=0x0)" P-INDEP
-; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x83C] "field V168._length (fldOffset=0x8)" P-INDEP
+; V374 tmp341 [V374,T52] ( 4, 14 ) byref -> [rbp-0x998] spill-single-def "field V167._reference (fldOffset=0x0)" P-INDEP
+; V375 tmp342 [V375,T53] ( 4, 14 ) int -> [rbp-0x848] spill-single-def "field V167._length (fldOffset=0x8)" P-INDEP
+; V376 tmp343 [V376,T84] ( 6, 8 ) byref -> [rbp-0x9A0] "field V168._reference (fldOffset=0x0)" P-INDEP
+; V377 tmp344 [V377,T83] ( 10, 8 ) int -> [rbp-0x84C] "field V168._length (fldOffset=0x8)" P-INDEP
; V378 tmp345 [V378,T86] ( 4, 8 ) byref -> rax "field V170._reference (fldOffset=0x0)" P-INDEP
; V379 tmp346 [V379,T92] ( 4, 8 ) int -> rcx "field V170._length (fldOffset=0x8)" P-INDEP
;* V380 tmp347 [V380 ] ( 0, 0 ) byref -> zero-ref "field V171._reference (fldOffset=0x0)" P-INDEP
;* V381 tmp348 [V381 ] ( 0, 0 ) int -> zero-ref "field V171._length (fldOffset=0x8)" P-INDEP
;* V382 tmp349 [V382 ] ( 0, 0 ) byref -> zero-ref "field V172._reference (fldOffset=0x0)" P-DEP
;* V383 tmp350 [V383 ] ( 0, 0 ) int -> zero-ref "field V172._length (fldOffset=0x8)" P-DEP
; V384 tmp351 [V384,T121] ( 3, 6 ) byref -> registers "field V174._reference (fldOffset=0x0)" P-INDEP
; V385 tmp352 [V385,T146] ( 3, 6 ) int -> registers "field V174._length (fldOffset=0x8)" P-INDEP
;* V386 tmp353 [V386 ] ( 0, 0 ) byref -> zero-ref "field V180._reference (fldOffset=0x0)" P-INDEP
;* V387 tmp354 [V387 ] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
;* V388 tmp355 [V388 ] ( 0, 0 ) byref -> zero-ref "field V188._reference (fldOffset=0x0)" P-INDEP
;* V389 tmp356 [V389 ] ( 0, 0 ) int -> zero-ref "field V188._length (fldOffset=0x8)" P-INDEP
;* V390 tmp357 [V390 ] ( 0, 0 ) ref -> zero-ref "field V200._array (fldOffset=0x0)" P-INDEP
;* V391 tmp358 [V391 ] ( 0, 0 ) long -> zero-ref "field V200._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V392 tmp359 [V392,T80] ( 3, 10 ) int -> rsi "field V200._currentDepth (fldOffset=0x10)" P-INDEP
;* V393 tmp360 [V393 ] ( 0, 0 ) ref -> zero-ref "field V215._array (fldOffset=0x0)" P-INDEP
;* V394 tmp361 [V394 ] ( 0, 0 ) long -> zero-ref "field V215._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V395 tmp362 [V395,T147] ( 3, 6 ) int -> rax "field V215._currentDepth (fldOffset=0x10)" P-INDEP
;* V396 tmp363 [V396 ] ( 0, 0 ) ref -> zero-ref "field V219._array (fldOffset=0x0)" P-INDEP
;* V397 tmp364 [V397 ] ( 0, 0 ) long -> zero-ref "field V219._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V398 tmp365 [V398,T13] ( 3, 40 ) int -> rcx "field V219._currentDepth (fldOffset=0x10)" P-INDEP
;* V399 tmp366 [V399 ] ( 0, 0 ) ref -> zero-ref "field V223._array (fldOffset=0x0)" P-INDEP
;* V400 tmp367 [V400 ] ( 0, 0 ) long -> zero-ref "field V223._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V401 tmp368 [V401,T148] ( 3, 6 ) int -> rsi "field V223._currentDepth (fldOffset=0x10)" P-INDEP
;* V402 tmp369 [V402 ] ( 0, 0 ) ref -> zero-ref "field V244._array (fldOffset=0x0)" P-INDEP
;* V403 tmp370 [V403 ] ( 0, 0 ) long -> zero-ref "field V244._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V404 tmp371 [V404,T81] ( 3, 10 ) int -> rsi "field V244._currentDepth (fldOffset=0x10)" P-INDEP
;* V405 tmp372 [V405 ] ( 0, 0 ) ref -> zero-ref "field V260._object (fldOffset=0x0)" P-INDEP
;* V406 tmp373 [V406 ] ( 0, 0 ) int -> zero-ref "field V260._integer (fldOffset=0x8)" P-INDEP
; V407 tmp374 [V407,T122] ( 3, 6 ) ref -> registers "field V261._object (fldOffset=0x0)" P-INDEP
; V408 tmp375 [V408,T149] ( 3, 6 ) int -> registers "field V261._integer (fldOffset=0x8)" P-INDEP
;* V409 tmp376 [V409,T218] ( 0, 0 ) ref -> zero-ref "field V266._object (fldOffset=0x0)" P-INDEP
; V410 tmp377 [V410,T183] ( 2, 4 ) int -> rbx "field V266._integer (fldOffset=0x8)" P-INDEP
;* V411 tmp378 [V411 ] ( 0, 0 ) ref -> zero-ref "field V268._object (fldOffset=0x0)" P-INDEP
;* V412 tmp379 [V412 ] ( 0, 0 ) int -> zero-ref "field V268._index (fldOffset=0x8)" P-INDEP
; V413 tmp380 [V413,T184] ( 2, 4 ) int -> rcx "field V268._length (fldOffset=0xc)" P-INDEP
;* V414 tmp381 [V414 ] ( 0, 0 ) ref -> zero-ref "field V270._object (fldOffset=0x0)" P-DEP
;* V415 tmp382 [V415 ] ( 0, 0 ) int -> zero-ref "field V270._integer (fldOffset=0x8)" P-DEP
;* V416 tmp383 [V416 ] ( 0, 0 ) ref -> zero-ref "field V275._startObject (fldOffset=0x0)" P-INDEP
;* V417 tmp384 [V417 ] ( 0, 0 ) ref -> zero-ref "field V275._endObject (fldOffset=0x8)" P-INDEP
;* V418 tmp385 [V418 ] ( 0, 0 ) int -> zero-ref "field V275._startInteger (fldOffset=0x10)" P-INDEP
;* V419 tmp386 [V419 ] ( 0, 0 ) int -> zero-ref "field V275._endInteger (fldOffset=0x14)" P-INDEP
; V420 tmp387 [V420,T167] ( 2, 4 ) byref -> r10 "field V280._reference (fldOffset=0x0)" P-INDEP
; V421 tmp388 [V421,T185] ( 2, 4 ) int -> r11 "field V280._length (fldOffset=0x8)" P-INDEP
;* V422 tmp389 [V422 ] ( 0, 0 ) ref -> zero-ref "field V292._array (fldOffset=0x0)" P-INDEP
;* V423 tmp390 [V423 ] ( 0, 0 ) long -> zero-ref "field V292._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V424 tmp391 [V424,T150] ( 3, 6 ) int -> rax "field V292._currentDepth (fldOffset=0x10)" P-INDEP
;* V425 tmp392 [V425 ] ( 0, 0 ) ref -> zero-ref "field V296._array (fldOffset=0x0)" P-INDEP
;* V426 tmp393 [V426 ] ( 0, 0 ) long -> zero-ref "field V296._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V427 tmp394 [V427,T14] ( 3, 40 ) int -> rcx "field V296._currentDepth (fldOffset=0x10)" P-INDEP
;* V428 tmp395 [V428 ] ( 0, 0 ) ref -> zero-ref "field V300._array (fldOffset=0x0)" P-INDEP
;* V429 tmp396 [V429 ] ( 0, 0 ) long -> zero-ref "field V300._allocationFreeContainer (fldOffset=0x8)" P-INDEP
; V430 tmp397 [V430,T151] ( 3, 6 ) int -> rsi "field V300._currentDepth (fldOffset=0x10)" P-INDEP
;* V431 tmp398 [V431 ] ( 0, 0 ) ref -> zero-ref "V152.[000..008)"
;* V432 tmp399 [V432 ] ( 0, 0 ) ref -> zero-ref "V152.[008..016)"
;* V433 tmp400 [V433 ] ( 0, 0 ) ref -> zero-ref "V152.[016..024)"
;* V434 tmp401 [V434 ] ( 0, 0 ) long -> zero-ref "V152.[024..032)"
; V435 tmp402 [V435,T123] ( 3, 6 ) ref -> registers "V259.[000..008)"
;* V436 tmp403 [V436 ] ( 0, 0 ) ref -> zero-ref "V259.[008..016)"
; V437 tmp404 [V437,T152] ( 3, 6 ) int -> r10 "V259.[016..020)"
;* V438 tmp405 [V438 ] ( 0, 0 ) int -> zero-ref "V259.[020..024)"
-; V439 tmp406 [V439,T58] ( 3, 12 ) byref -> r8 "Spilling address for field-by-field copy"
+; V439 tmp406 [V439,T44] ( 4, 16 ) byref -> [rbp-0x9A8] spill-single-def "Spilling address for field-by-field copy"
; V440 tmp407 [V440,T199] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V441 tmp408 [V441,T203] ( 3, 3 ) int -> rsi "index expr"
; V442 tmp409 [V442,T104] ( 2, 8 ) ref -> rdi "argument with side effect"
; V443 tmp410 [V443,T112] ( 2, 8 ) int -> rsi "argument with side effect"
; V444 tmp411 [V444,T105] ( 2, 8 ) ref -> rdi "argument with side effect"
; V445 tmp412 [V445,T213] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V446 tmp413 [V446,T262] ( 2, 0 ) ref -> rbx "argument with side effect"
; V447 tmp414 [V447,T263] ( 2, 0 ) ref -> rsi "argument with side effect"
; V448 tmp415 [V448,T264] ( 2, 0 ) ref -> rbx "argument with side effect"
; V449 tmp416 [V449,T265] ( 2, 0 ) ref -> rsi "argument with side effect"
; V450 tmp417 [V450,T200] ( 3, 3 ) ref -> rdi single-def "arr expr"
; V451 tmp418 [V451,T204] ( 3, 3 ) int -> rsi "index expr"
; V452 tmp419 [V452,T201] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V453 tmp420 [V453,T21] ( 3, 24 ) ref -> rdx "arr expr"
; V454 tmp421 [V454,T22] ( 3, 24 ) ref -> rsi "arr expr"
;* V455 tmp422 [V455,T113] ( 0, 0 ) ref -> zero-ref "arr expr"
; V456 tmp423 [V456,T106] ( 2, 8 ) ref -> rdi "argument with side effect"
; V457 tmp424 [V457,T59] ( 3, 12 ) ref -> rdx "arr expr"
; V458 tmp425 [V458,T214] ( 2, 2 ) ref -> rdi single-def "argument with side effect"
; V459 tmp426 [V459,T215] ( 2, 2 ) ref -> rdx single-def "argument with side effect"
;* V460 cse0 [V460,T159] ( 0, 0 ) long -> zero-ref multi-def "CSE #23: conservative"
-; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x998] spill-single-def "CSE #36: conservative"
+; V461 cse1 [V461,T26] ( 6, 20 ) byref -> [rbp-0x9B0] spill-single-def "CSE #36: conservative"
; V462 cse2 [V462,T60] ( 3, 12 ) byref -> rsi "CSE #54: conservative"
; V463 cse3 [V463,T63] ( 3, 12 ) long -> rsi "CSE #35: conservative"
; V464 cse4 [V464,T64] ( 3, 12 ) long -> rdi "CSE #53: conservative"
-; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x848] multi-def "CSE #19: conservative"
+; V465 cse5 [V465,T66] ( 9, 11.50) long -> [rbp-0x858] multi-def "CSE #19: conservative"
; V466 cse6 [V466,T153] ( 3, 6 ) int -> rdi "CSE #03: conservative"
; V467 cse7 [V467,T154] ( 3, 6 ) int -> rdi "CSE #20: conservative"
-; V468 cse8 [V468,T44] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
-; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9A0] spill-single-def "CSE #22: conservative"
+; V468 cse8 [V468,T45] ( 3, 12 ) ref -> rsi "CSE #50: conservative"
+; V469 cse9 [V469,T87] ( 4, 8 ) ref -> [rbp-0x9B8] spill-single-def "CSE #22: conservative"
; V470 cse10 [V470,T155] ( 3, 6 ) int -> rdi "CSE #44: conservative"
-; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9A8] multi-def "CSE #02: moderate"
-; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x850] "Widened IV V26"
-; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x858] "Widened IV V15"
+; V471 cse11 [V471,T15] ( 35, 39 ) byref -> [rbp-0x9C0] multi-def "CSE #02: moderate"
+; V472 rat0 [V472,T19] ( 7, 24.50) long -> [rbp-0x860] "Widened IV V26"
+; V473 rat1 [V473,T24] ( 6, 20.50) long -> [rbp-0x868] "Widened IV V15"
; V474 rat2 [V474,T61] ( 3, 12 ) ref -> r11 "delegate invoke call"
-; TEMP_01 int -> [rbp-0x9AC]
-; TEMP_02 ref -> [rbp-0x9B8]
+; TEMP_01 int -> [rbp-0x9C4]
+; TEMP_02 ref -> [rbp-0x9D0]
;
-; Lcl frame size = 2536
+; Lcl frame size = 2552
G_M38429_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 0x9E8
- lea rbp, [rsp+0xA10]
- xor eax, eax
- mov qword ptr [rbp-0x9B8], rax
+ sub rsp, 0x9F8
+ lea rbp, [rsp+0xA20]
vxorps xmm8, xmm8, xmm8
- vmovdqa xmmword ptr [rbp-0x9B0], xmm8
- vmovdqa xmmword ptr [rbp-0x9A0], xmm8
- mov rax, -0x960
+ vmovdqa xmmword ptr [rbp-0x9D0], xmm8
+ mov rax, -0x990
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], rax
mov r13, rdi
mov rbx, rsi
mov rax, rdx
mov r14, rcx
mov r15, r8
mov r12, r9
- ;; size=111 bbWeight=1 PerfScore 22.33
+ ;; size=94 bbWeight=1 PerfScore 19.08
G_M38429_IG02:
mov r10, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x870], r10
+ mov gword ptr [rbp-0x880], r10
cmp gword ptr [r10+0x08], 0
je SHORT G_M38429_IG04
;; size=18 bbWeight=1 PerfScore 7.00
G_M38429_IG03:
cmp byte ptr [r15+0x90], 0
je SHORT G_M38429_IG05
;; size=10 bbWeight=0.50 PerfScore 2.00
G_M38429_IG04:
mov rdi, r13
mov rsi, rbx
mov rdx, rax
mov rcx, r14
mov r8, r15
mov r9, r12
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
jmp G_M38429_IG189
;; size=35 bbWeight=0.50 PerfScore 3.38
G_M38429_IG05:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x878], rcx
+ mov gword ptr [rbp-0x888], rcx
cmp byte ptr [r15+0x28], 0
jne SHORT G_M38429_IG07
cmp byte ptr [r15+0x8B], 0
jne SHORT G_M38429_IG06
cmp byte ptr [rbx+0x28], 1
jne G_M38429_IG218
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M38429_IG08
xor rdi, rdi
jmp SHORT G_M38429_IG09
;; size=52 bbWeight=0.50 PerfScore 10.62
G_M38429_IG06:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M38429_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M38429_IG07:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
jmp G_M38429_IG153
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M38429_IG08:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M38429_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M38429_IG09:
test rdi, rdi
je G_M38429_IG50
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M38429_IG50
mov r13, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M38429_IG10
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=62 bbWeight=0.50 PerfScore 8.75
G_M38429_IG10:
lea rcx, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rcx
- mov bword ptr [rbp-0x8D0], rcx
- mov rax, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rcx
+ mov bword ptr [rbp-0x8E0], rcx
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M38429_IG11
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x8D8], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x8E8], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov r8, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [r8]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x8D0]
+ mov rdi, bword ptr [rbp-0x8E0]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x8D8]
+ mov rsi, gword ptr [rbp-0x8E8]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=110 bbWeight=0.50 PerfScore 10.00
G_M38429_IG11:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M38429_IG42
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M38429_IG13
;; size=31 bbWeight=4 PerfScore 46.00
G_M38429_IG12:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M38429_IG16
;; size=20 bbWeight=2 PerfScore 13.00
G_M38429_IG13:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x360], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x350], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M38429_IG14:
lea rdi, [rbp-0x360]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M38429_IG15
xor rax, rax
xor ecx, ecx
jmp SHORT G_M38429_IG16
;; size=30 bbWeight=2 PerfScore 15.00
G_M38429_IG15:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M38429_IG16:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M38429_IG18
;; size=6 bbWeight=4 PerfScore 16.00
G_M38429_IG17:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M38429_IG19
;; size=8 bbWeight=2 PerfScore 5.00
G_M38429_IG18:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M38429_IG19:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M38429_IG23
;; size=10 bbWeight=4 PerfScore 16.00
G_M38429_IG20:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M38429_IG21
mov rcx, gword ptr [rdi+0x28]
jmp SHORT G_M38429_IG22
;; size=22 bbWeight=2 PerfScore 18.50
G_M38429_IG21:
mov rcx, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M38429_IG22:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rcx+0x88]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rcx]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M38429_IG33
cmp byte ptr [r14+0x93], 0
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
je G_M38429_IG193
;; size=75 bbWeight=2 PerfScore 30.00
G_M38429_IG23:
mov dword ptr [rsp], 1
mov rsi, rdx
mov edx, r8d
lea r9, [rbp-0x348]
mov rdi, r13
mov rcx, r15
mov r8, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [rax]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8C8], rax
+ mov gword ptr [rbp-0x8D8], rax
movzx rcx, byte ptr [rbp-0x348]
mov dword ptr [rbp-0x424], ecx
cmp byte ptr [rax+0x9C], 0
jne G_M38429_IG37
;; size=74 bbWeight=4 PerfScore 52.00
G_M38429_IG24:
cmp byte ptr [rbx+0x24], 0
je G_M38429_IG34
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M38429_IG25
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=31 bbWeight=2 PerfScore 23.00
G_M38429_IG25:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M38429_IG26
cmp eax, 3
jne G_M38429_IG39
;; size=21 bbWeight=2 PerfScore 9.50
G_M38429_IG26:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M38429_IG27
cmp edi, 3
jne SHORT G_M38429_IG28
;; size=15 bbWeight=2 PerfScore 9.50
G_M38429_IG27:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG28:
mov dword ptr [rbp-0x4EC], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M38429_IG29:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M38429_IG31
;; size=30 bbWeight=16 PerfScore 144.00
G_M38429_IG30:
cmp esi, 3
jne SHORT G_M38429_IG32
;; size=5 bbWeight=8 PerfScore 10.00
G_M38429_IG31:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M38429_IG32:
mov ecx, dword ptr [rbp-0x4EC]
cmp ecx, edi
jl SHORT G_M38429_IG29
jmp G_M38429_IG39
;; size=15 bbWeight=16 PerfScore 68.00
G_M38429_IG33:
- mov rdx, bword ptr [rbp-0x980]
- mov r8d, dword ptr [rbp-0x834]
+ mov rdx, bword ptr [rbp-0x990]
+ mov r8d, dword ptr [rbp-0x844]
jmp G_M38429_IG23
;; size=19 bbWeight=1 PerfScore 4.00
G_M38429_IG34:
lea rdi, bword ptr [rbp-0x4E8]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M38429_IG35
cmp edi, 3
jne SHORT G_M38429_IG36
;; size=38 bbWeight=2 PerfScore 65.50
G_M38429_IG35:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG36:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
- jne G_M38429_IG39
+ jne SHORT G_M38429_IG39
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x4E8]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
+ lea rsi, [rbp-0x4E8]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
jmp SHORT G_M38429_IG39
- ;; size=108 bbWeight=2 PerfScore 102.00
+ ;; size=43 bbWeight=2 PerfScore 18.00
G_M38429_IG37:
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rdx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0x424], 0
jne SHORT G_M38429_IG38
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M38429_IG39
;; size=52 bbWeight=2 PerfScore 34.50
G_M38429_IG38:
- mov rdi, gword ptr [rbp-0x8C8]
+ mov rdi, gword ptr [rbp-0x8D8]
mov rsi, r13
mov rdx, r15
mov rcx, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=28 bbWeight=2 PerfScore 10.00
G_M38429_IG39:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=15 bbWeight=4 PerfScore 10.00
G_M38429_IG40:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M38429_IG41:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
jmp G_M38429_IG11
;; size=13 bbWeight=4 PerfScore 16.00
G_M38429_IG42:
- mov r14, gword ptr [rbp-0x870]
+ mov r14, gword ptr [rbp-0x880]
mov rcx, gword ptr [r14+0x40]
test rcx, rcx
je SHORT G_M38429_IG43
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M38429_IG43:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rbx, rax
cmp dword ptr [r14+0xF4], 0
jle G_M38429_IG49
mov rdi, gword ptr [rbx+0x48]
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rcx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne SHORT G_M38429_IG48
mov rsi, gword ptr [rbx+0x48]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
;; size=72 bbWeight=0.50 PerfScore 10.62
G_M38429_IG44:
cmp gword ptr [r15+0x68], 0
je SHORT G_M38429_IG45
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
;; size=25 bbWeight=0.50 PerfScore 3.88
G_M38429_IG45:
mov rsi, 0xD1FFAB1E ; System.Int16
cmp qword ptr [r13], rsi
je SHORT G_M38429_IG47
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M38429_IG46:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int16
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M38429_IG47:
movsx rsi, word ptr [r13+0x08]
mov word ptr [r12], si
jmp G_M38429_IG149
;; size=15 bbWeight=0.50 PerfScore 3.50
G_M38429_IG48:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M38429_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M38429_IG49:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
jmp SHORT G_M38429_IG44
;; size=9 bbWeight=0.25 PerfScore 0.75
G_M38429_IG50:
lea rsi, bword ptr [rbx+0x80]
mov rdi, gword ptr [rsi]
mov rax, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8E0], rax
+ mov gword ptr [rbp-0x8F0], rax
mov edx, dword ptr [rsi+0x10]
and edx, 0xD1FFAB1E
mov dword ptr [rbp-0x4F0], edx
mov r8d, dword ptr [rsi+0x14]
and r8d, 0xD1FFAB1E
mov dword ptr [rbp-0x4F4], r8d
cmp rdi, rax
je SHORT G_M38429_IG51
mov rsi, rdi
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r9, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r9]CORINFO_HELP_CHKCASTCLASS
- mov gword ptr [rbp-0x8E8], rax
- mov rsi, gword ptr [rbp-0x8E0]
+ mov gword ptr [rbp-0x8F8], rax
+ mov rsi, gword ptr [rbp-0x8F0]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rcx]CORINFO_HELP_CHKCASTCLASS
movsxd rdi, dword ptr [rbp-0x4F4]
add rdi, qword ptr [rax+0x10]
movsxd rax, dword ptr [rbp-0x4F0]
- mov rcx, gword ptr [rbp-0x8E8]
+ mov rcx, gword ptr [rbp-0x8F8]
add rax, qword ptr [rcx+0x10]
sub rdi, rax
jmp SHORT G_M38429_IG52
;; size=155 bbWeight=0.50 PerfScore 18.88
G_M38429_IG51:
mov r8d, dword ptr [rbp-0x4F4]
sub r8d, dword ptr [rbp-0x4F0]
movsxd rdi, r8d
;; size=17 bbWeight=0.50 PerfScore 1.62
G_M38429_IG52:
test rdi, rdi
je SHORT G_M38429_IG53
xor rax, rax
xor edx, edx
jmp SHORT G_M38429_IG54
;; size=11 bbWeight=0.50 PerfScore 1.88
G_M38429_IG53:
mov rax, bword ptr [rbx+0x30]
mov edx, dword ptr [rbx+0x38]
;; size=7 bbWeight=0.50 PerfScore 2.00
G_M38429_IG54:
- mov bword ptr [rbp-0x968], rax
- mov dword ptr [rbp-0x828], edx
+ mov bword ptr [rbp-0x978], rax
+ mov dword ptr [rbp-0x838], edx
mov rsi, gword ptr [rbx+0x80]
- mov gword ptr [rbp-0x970], rsi
+ mov gword ptr [rbp-0x980], rsi
mov r8, gword ptr [rbx+0x88]
- mov gword ptr [rbp-0x978], r8
+ mov gword ptr [rbp-0x988], r8
mov r9d, dword ptr [rbx+0x90]
- mov dword ptr [rbp-0x82C], r9d
+ mov dword ptr [rbp-0x83C], r9d
mov r11d, dword ptr [rbx+0x94]
- mov dword ptr [rbp-0x830], r11d
+ mov dword ptr [rbp-0x840], r11d
mov rdi, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x918], rdi
+ mov gword ptr [rbp-0x928], rdi
cmp byte ptr [rdi+0x103], 0
jne G_M38429_IG202
mov eax, dword ptr [rdi+0xF0]
- mov dword ptr [rbp-0x9AC], eax
+ mov dword ptr [rbp-0x9C4], eax
mov rax, gword ptr [rdi+0x08]
mov rax, gword ptr [rax+0x10]
- mov edi, dword ptr [rbp-0x9AC]
+ mov edi, dword ptr [rbp-0x9C4]
cmp edi, dword ptr [rax+0x10]
jne G_M38429_IG220
lea rax, bword ptr [r15+0x30]
- mov bword ptr [rbp-0x9A8], rax
- mov bword ptr [rbp-0x920], rax
- mov rdi, gword ptr [rbp-0x918]
+ mov bword ptr [rbp-0x9C0], rax
+ mov bword ptr [rbp-0x930], rax
+ mov rdi, gword ptr [rbp-0x928]
cmp dword ptr [rdi+0xF4], 0
jle SHORT G_M38429_IG55
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x928], rax
- mov rcx, gword ptr [rbp-0x918]
+ mov gword ptr [rbp-0x938], rax
+ mov rcx, gword ptr [rbp-0x928]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x920]
+ mov rdi, bword ptr [rbp-0x930]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x928]
+ mov rsi, gword ptr [rbp-0x938]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=237 bbWeight=0.50 PerfScore 26.50
G_M38429_IG55:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
- mov gword ptr [rbp-0x9B8], rdx
+ mov gword ptr [rbp-0x9D0], rdx
mov rdx, qword ptr [r13]
mov rdx, qword ptr [rdx+0x68]
- mov qword ptr [rbp-0x848], rdx
- mov rdx, gword ptr [rbp-0x9B8]
- mov r11, qword ptr [rbp-0x848]
+ mov qword ptr [rbp-0x858], rdx
+ mov rdx, gword ptr [rbp-0x9D0]
+ mov r11, qword ptr [rbp-0x858]
call [r11+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
;; size=55 bbWeight=0.50 PerfScore 6.50
G_M38429_IG56:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp byte ptr [rbx+0x28], 2
je G_M38429_IG107
cmp byte ptr [rbx+0x2D], 0
jne SHORT G_M38429_IG58
;; size=31 bbWeight=4 PerfScore 46.00
G_M38429_IG57:
mov rdi, bword ptr [rbx+0x98]
mov rax, rdi
mov esi, dword ptr [rbx+0xA0]
mov ecx, esi
jmp SHORT G_M38429_IG61
;; size=20 bbWeight=2 PerfScore 13.00
G_M38429_IG58:
vmovdqu xmm0, xmmword ptr [rbx+0xA8]
vmovdqu xmmword ptr [rbp-0x5B8], xmm0
mov rdi, qword ptr [rbx+0xB8]
mov qword ptr [rbp-0x5A8], rdi
;; size=30 bbWeight=2 PerfScore 16.00
G_M38429_IG59:
lea rdi, [rbp-0x5B8]
mov rax, 0xD1FFAB1E ; code for System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
call [rax]System.Buffers.BuffersExtensions:ToArray[ubyte](byref):ubyte[]
test rax, rax
jne SHORT G_M38429_IG60
xor rax, rax
xor ecx, ecx
jmp SHORT G_M38429_IG61
;; size=30 bbWeight=2 PerfScore 15.00
G_M38429_IG60:
lea rcx, bword ptr [rax+0x10]
mov edi, dword ptr [rax+0x08]
mov rax, rcx
mov ecx, edi
;; size=12 bbWeight=2 PerfScore 6.00
G_M38429_IG61:
cmp byte ptr [rbx+0x2E], 0
jne SHORT G_M38429_IG63
;; size=6 bbWeight=4 PerfScore 16.00
G_M38429_IG62:
mov rdx, rax
mov r8d, ecx
jmp SHORT G_M38429_IG64
;; size=8 bbWeight=2 PerfScore 5.00
G_M38429_IG63:
mov rdi, rax
mov esi, ecx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
call [rax]System.Text.Json.JsonReaderHelper:GetUnescapedSpan(System.ReadOnlySpan`1[ubyte]):System.ReadOnlySpan`1[ubyte]
mov ecx, edx
mov rdx, rax
mov r8d, ecx
;; size=25 bbWeight=2 PerfScore 9.00
G_M38429_IG64:
- mov bword ptr [rbp-0x990], rdx
+ mov bword ptr [rbp-0x9A0], rdx
mov rax, rdx
- mov bword ptr [rbp-0x988], rax
- mov dword ptr [rbp-0x83C], r8d
+ mov bword ptr [rbp-0x998], rax
+ mov dword ptr [rbp-0x84C], r8d
mov ecx, r8d
- mov dword ptr [rbp-0x838], ecx
+ mov dword ptr [rbp-0x848], ecx
cmp byte ptr [r15+0x8B], 0
je G_M38429_IG74
;; size=47 bbWeight=4 PerfScore 34.00
G_M38429_IG65:
- mov r9, bword ptr [rbp-0x9A8]
+ mov r9, bword ptr [rbp-0x9C0]
mov rdi, r9
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M38429_IG66
mov r10, gword ptr [rdi+0x28]
jmp SHORT G_M38429_IG67
;; size=22 bbWeight=2 PerfScore 18.50
G_M38429_IG66:
mov r10, gword ptr [rdi+0x30]
;; size=4 bbWeight=2 PerfScore 4.00
G_M38429_IG67:
mov rdi, rax
mov esi, ecx
mov rdx, gword ptr [r10+0x88]
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [r10]System.Text.Json.JsonSerializer:IsMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
- mov rax, bword ptr [rbp-0x988]
- mov ecx, dword ptr [rbp-0x838]
+ mov rax, bword ptr [rbp-0x998]
+ mov ecx, dword ptr [rbp-0x848]
je SHORT G_M38429_IG74
cmp byte ptr [r14+0x93], 0
je G_M38429_IG203
;; size=56 bbWeight=2 PerfScore 26.00
G_M38429_IG68:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M38429_IG70
;; size=15 bbWeight=4 PerfScore 22.00
G_M38429_IG69:
cmp edi, 3
jne SHORT G_M38429_IG71
;; size=5 bbWeight=2 PerfScore 2.50
G_M38429_IG70:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG71:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdx, rdx
mov gword ptr [rsi], rdx
;; size=32 bbWeight=4 PerfScore 25.00
G_M38429_IG72:
mov gword ptr [rsi+0x08], rdx
;; size=4 bbWeight=4 PerfScore 4.00
G_M38429_IG73:
mov gword ptr [rsi+0x10], rdx
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M38429_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M38429_IG74:
lea rsi, [rbp-0x500]
mov qword ptr [rsp], rsi
mov rsi, rax
mov edx, ecx
mov rdi, r13
mov rcx, r15
mov r8, rbx
mov r9, r14
- mov r10, qword ptr [rbp-0x848]
+ mov r10, qword ptr [rbp-0x858]
call [r10+0x20]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:TryLookupConstructorParameter(System.ReadOnlySpan`1[ubyte],byref,byref,System.Text.Json.JsonSerializerOptions,byref):ubyte:this
test eax, eax
je G_M38429_IG91
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov rdi, gword ptr [rbp-0x500]
cmp byte ptr [rdi+0x35], 0
jne G_M38429_IG89
cmp byte ptr [rbx+0x24], 0
je SHORT G_M38429_IG84
;; size=85 bbWeight=4 PerfScore 83.00
G_M38429_IG75:
cmp byte ptr [rbx+0x28], 5
jne SHORT G_M38429_IG76
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=21 bbWeight=2 PerfScore 15.00
G_M38429_IG76:
movzx rdi, byte ptr [rbx+0x28]
mov eax, edi
cmp eax, 1
je SHORT G_M38429_IG77
cmp eax, 3
jne G_M38429_IG87
;; size=21 bbWeight=2 PerfScore 9.50
G_M38429_IG77:
mov eax, dword ptr [rbx+0x58]
mov ecx, eax
cmp edi, 1
je SHORT G_M38429_IG78
cmp edi, 3
jne SHORT G_M38429_IG79
;; size=15 bbWeight=2 PerfScore 9.50
G_M38429_IG78:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG79:
mov dword ptr [rbp-0x73C], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M38429_IG80:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbx+0x58]
mov edi, ecx
movzx rsi, byte ptr [rbx+0x28]
cmp esi, 1
je SHORT G_M38429_IG82
;; size=30 bbWeight=16 PerfScore 144.00
G_M38429_IG81:
cmp esi, 3
jne SHORT G_M38429_IG83
;; size=5 bbWeight=8 PerfScore 10.00
G_M38429_IG82:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M38429_IG83:
mov ecx, dword ptr [rbp-0x73C]
cmp ecx, edi
jl SHORT G_M38429_IG80
- jmp G_M38429_IG87
- ;; size=15 bbWeight=16 PerfScore 68.00
+ jmp SHORT G_M38429_IG87
+ ;; size=12 bbWeight=16 PerfScore 68.00
G_M38429_IG84:
lea rdi, bword ptr [rbp-0x738]
mov rsi, rbx
mov ecx, 24
rep movsq
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M38429_IG85
cmp edi, 3
jne SHORT G_M38429_IG86
;; size=38 bbWeight=2 PerfScore 65.50
G_M38429_IG85:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG86:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M38429_IG87
mov rdi, rbx
- lea rsi, bword ptr [rbp-0x738]
- mov ecx, 6
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- ;; size=102 bbWeight=2 PerfScore 98.00
+ lea rsi, [rbp-0x738]
+ mov edx, 72
+ call CORINFO_HELP_ASSIGN_STRUCT
+ ;; size=41 bbWeight=2 PerfScore 14.00
G_M38429_IG87:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
mov rsi, gword ptr [rdi+0x40]
xor rdx, rdx
mov gword ptr [rsi+0x20], rdx
;; size=20 bbWeight=4 PerfScore 18.00
G_M38429_IG88:
mov gword ptr [rdi+0x08], rdx
mov byte ptr [rdi+0x58], 0
jmp G_M38429_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M38429_IG89:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, gword ptr [rbp-0x500]
- mov r8, qword ptr [rbp-0x848]
+ mov r8, qword ptr [rbp-0x858]
call [r8+0x10]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:ReadAndCacheConstructorArgument(byref,byref,System.Text.Json.Serialization.Metadata.JsonParameterInfo):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
mov rdx, gword ptr [rsi+0x40]
xor r9, r9
mov gword ptr [rdx+0x20], r9
;; size=48 bbWeight=4 PerfScore 41.00
G_M38429_IG90:
mov gword ptr [rsi+0x08], r9
mov byte ptr [rsi+0x58], 0
jmp G_M38429_IG56
;; size=13 bbWeight=4 PerfScore 16.00
G_M38429_IG91:
xor esi, esi
mov dword ptr [rsp], esi
- mov rsi, bword ptr [rbp-0x988]
- mov edx, dword ptr [rbp-0x838]
+ mov rsi, bword ptr [rbp-0x998]
+ mov edx, dword ptr [rbp-0x848]
lea r9, [rbp-0x508]
mov rcx, r15
mov r8, r14
xor rdi, rdi
mov r10, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
call [r10]System.Text.Json.JsonSerializer:LookupProperty(System.Object,System.ReadOnlySpan`1[ubyte],byref,System.Text.Json.JsonSerializerOptions,byref,ubyte):System.Text.Json.Serialization.Metadata.JsonPropertyInfo
- mov gword ptr [rbp-0x8F0], rax
+ mov gword ptr [rbp-0x900], rax
cmp byte ptr [rax+0x9B], 0
je G_M38429_IG100
;; size=66 bbWeight=4 PerfScore 51.00
G_M38429_IG92:
mov rcx, gword ptr [r15+0x70]
- mov gword ptr [rbp-0x8F8], rcx
+ mov gword ptr [rbp-0x908], rcx
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x9A0], rdx
+ mov gword ptr [rbp-0x9B8], rdx
test rdx, rdx
jne SHORT G_M38429_IG95
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, gword ptr [r15+0x58]
mov rsi, gword ptr [rsi+0x10]
mov rsi, gword ptr [rsi+0x10]
mov esi, dword ptr [rsi+0x10]
cmp esi, 1
jle SHORT G_M38429_IG93
jmp SHORT G_M38429_IG94
;; size=82 bbWeight=2 PerfScore 44.50
G_M38429_IG93:
mov esi, 1
;; size=5 bbWeight=2 PerfScore 0.50
G_M38429_IG94:
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
lea rdi, bword ptr [rcx+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
jmp G_M38429_IG97
;; size=38 bbWeight=2 PerfScore 22.00
G_M38429_IG95:
- mov rcx, gword ptr [rbp-0x8F8]
+ mov rcx, gword ptr [rbp-0x908]
mov edi, dword ptr [rcx+0x30]
cmp edi, dword ptr [rdx+0x08]
jne G_M38429_IG97
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x9A0]
+ mov rsi, gword ptr [rbp-0x9B8]
mov esi, dword ptr [rsi+0x08]
add esi, esi
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Rent(int):System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][]:this
- mov gword ptr [rbp-0x908], rax
- mov rcx, gword ptr [rbp-0x8F8]
+ mov gword ptr [rbp-0x918], rax
+ mov rcx, gword ptr [rbp-0x908]
mov rdx, gword ptr [rcx+0x10]
- mov gword ptr [rbp-0x930], rdx
+ mov gword ptr [rbp-0x940], rdx
cmp byte ptr [rdx], dl
test rax, rax
je G_M38429_IG106
mov rdi, qword ptr [rax]
mov edi, dword ptr [rdi+0x04]
add edi, -24
shr edi, 3
je SHORT G_M38429_IG96
cmp edi, 1
jne G_M38429_IG213
;; size=137 bbWeight=2 PerfScore 73.00
G_M38429_IG96:
mov rdi, rdx
xor esi, esi
mov r8, 0xD1FFAB1E ; code for System.Array:GetLowerBound(int):int:this
call [r8]System.Array:GetLowerBound(int):int:this
mov esi, eax
- mov rdi, gword ptr [rbp-0x930]
+ mov rdi, gword ptr [rbp-0x940]
mov r8d, dword ptr [rdi+0x08]
test r8d, r8d
jl G_M38429_IG191
- mov rdx, gword ptr [rbp-0x908]
+ mov rdx, gword ptr [rbp-0x918]
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Array:Copy(System.Array,int,System.Array,int,int)
call [rax]System.Array:Copy(System.Array,int,System.Array,int,int)
- mov rax, gword ptr [rbp-0x8F8]
+ mov rax, gword ptr [rbp-0x908]
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x910], rcx
+ mov gword ptr [rbp-0x920], rcx
lea rdi, bword ptr [rax+0x10]
- mov rsi, gword ptr [rbp-0x908]
+ mov rsi, gword ptr [rbp-0x918]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
- mov rsi, gword ptr [rbp-0x910]
+ mov rsi, gword ptr [rbp-0x920]
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
;; size=134 bbWeight=2 PerfScore 58.00
G_M38429_IG97:
- mov rsi, gword ptr [rbp-0x8F8]
+ mov rsi, gword ptr [rbp-0x908]
mov rax, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x900], rax
+ mov gword ptr [rbp-0x910], rax
mov ecx, dword ptr [rsi+0x30]
mov dword ptr [rbp-0x50C], ecx
lea edi, [rcx+0x01]
mov dword ptr [rsi+0x30], edi
lea rsi, [rbp-0x548]
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
call [rdx]System.Text.Json.Utf8JsonReader:get_CurrentState():System.Text.Json.JsonReaderState:this
- mov rdx, qword ptr [rbx+0x10]
- movsxd r8, dword ptr [rbx+0x20]
- add rdx, r8
- mov rcx, gword ptr [r15+0x38]
- mov rdi, gword ptr [r15+0x40]
- ;; size=74 bbWeight=2 PerfScore 45.50
+ mov rax, qword ptr [rbx+0x10]
+ movsxd rcx, dword ptr [rbx+0x20]
+ add rax, rcx
+ mov qword ptr [rbp-0x748], rax
+ mov rdi, gword ptr [r15+0x38]
+ mov rsi, gword ptr [r15+0x40]
+ ;; size=81 bbWeight=2 PerfScore 47.50
G_M38429_IG98:
vmovdqu ymm0, ymmword ptr [rbp-0x548]
vmovdqu ymmword ptr [rbp-0x580], ymm0
vmovdqu ymm0, ymmword ptr [rbp-0x530]
vmovdqu ymmword ptr [rbp-0x568], ymm0
;; size=32 bbWeight=2 PerfScore 20.00
G_M38429_IG99:
- mov rsi, gword ptr [rbp-0x8F0]
- mov gword ptr [rbp-0x5A0], rsi
- mov gword ptr [rbp-0x598], rcx
- mov gword ptr [rbp-0x590], rdi
- mov ecx, dword ptr [rbp-0x50C]
- mov rdi, gword ptr [rbp-0x900]
- cmp ecx, dword ptr [rdi+0x08]
+ mov rdx, gword ptr [rbp-0x900]
+ mov gword ptr [rbp-0x5A0], rdx
+ mov gword ptr [rbp-0x598], rdi
+ mov gword ptr [rbp-0x590], rsi
+ mov edi, dword ptr [rbp-0x50C]
+ mov rsi, gword ptr [rbp-0x910]
+ cmp edi, dword ptr [rsi+0x08]
jae G_M38429_IG192
- imul rcx, rcx, 88
- lea r8, bword ptr [rdi+rcx+0x10]
- mov rdi, r8
- lea rsi, bword ptr [rbp-0x5A0]
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- call CORINFO_HELP_ASSIGN_BYREF
- mov ecx, 5
- rep movsq
- call CORINFO_HELP_ASSIGN_BYREF
- movsq
- movsq
- mov qword ptr [r8+0x18], rdx
- ;; size=105 bbWeight=2 PerfScore 92.00
+ imul rdi, rdi, 88
+ lea rcx, bword ptr [rsi+rdi+0x10]
+ mov bword ptr [rbp-0x9A8], rcx
+ cmp byte ptr [rcx], cl
+ mov rdi, rcx
+ lea rsi, [rbp-0x5A0]
+ mov edx, 32
+ call CORINFO_HELP_ASSIGN_STRUCT
+ mov rdi, bword ptr [rbp-0x9A8]
+ mov rsi, qword ptr [rbp-0x748]
+ mov qword ptr [rdi+0x18], rsi
+ ;; size=106 bbWeight=2 PerfScore 44.00
G_M38429_IG100:
mov esi, dword ptr [rbx+0x58]
mov eax, esi
movzx rdi, byte ptr [rbx+0x28]
cmp edi, 1
je SHORT G_M38429_IG102
;; size=15 bbWeight=4 PerfScore 22.00
G_M38429_IG101:
cmp edi, 3
jne SHORT G_M38429_IG103
;; size=5 bbWeight=2 PerfScore 2.50
G_M38429_IG102:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG103:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rsi, rax
xor rdi, rdi
mov gword ptr [rsi], rdi
;; size=32 bbWeight=4 PerfScore 25.00
G_M38429_IG104:
mov gword ptr [rsi+0x08], rdi
;; size=4 bbWeight=4 PerfScore 4.00
G_M38429_IG105:
mov gword ptr [rsi+0x10], rdi
mov byte ptr [rsi+0x58], 0
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
jmp G_M38429_IG56
;; size=20 bbWeight=4 PerfScore 20.00
G_M38429_IG106:
jmp G_M38429_IG96
;; size=5 bbWeight=1 PerfScore 2.00
G_M38429_IG107:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
xor rsi, rsi
mov gword ptr [rbp-0x500], rsi
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rsi, rax
mov rdi, r13
- mov r13, qword ptr [rbp-0x848]
+ mov r13, qword ptr [rbp-0x858]
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:CreateObject(byref):System.Object:this
mov rbx, rax
mov rsi, 0xD1FFAB1E ; System.Int16
cmp qword ptr [rbx], rsi
je SHORT G_M38429_IG109
;; size=58 bbWeight=0.50 PerfScore 6.12
G_M38429_IG108:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Int16
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M38429_IG109:
mov rdi, 0xD1FFAB1E ; System.Int16
call CORINFO_HELP_NEWSFAST
mov r13, rax
movsx rsi, word ptr [rbx+0x08]
mov word ptr [r13+0x08], si
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
mov rax, gword ptr [rbx+0x38]
test rax, rax
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
je SHORT G_M38429_IG110
mov rsi, r13
mov rdi, gword ptr [rax+0x08]
call [rax+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=61 bbWeight=0.50 PerfScore 8.50
G_M38429_IG110:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp dword ptr [rax+0x30], 0
jle G_M38429_IG143
mov rcx, gword ptr [rax+0x10]
- mov gword ptr [rbp-0x880], rcx
+ mov gword ptr [rbp-0x890], rcx
xor edx, edx
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
;; size=37 bbWeight=0.50 PerfScore 4.62
G_M38429_IG111:
cmp edx, dword ptr [rcx+0x08]
jae G_M38429_IG192
- mov qword ptr [rbp-0x858], rdx
+ mov qword ptr [rbp-0x868], rdx
imul rsi, rdx, 88
mov r8, gword ptr [rcx+rsi+0x10]
- mov gword ptr [rbp-0x888], r8
+ mov gword ptr [rbp-0x898], r8
lea r9, bword ptr [rcx+rsi+0x10]
- mov bword ptr [rbp-0x998], r9
+ mov bword ptr [rbp-0x9B0], r9
mov r10, qword ptr [r9+0x18]
mov qword ptr [rbp-0xF0], r10
mov r11, gword ptr [r9+0x08]
- mov gword ptr [rbp-0x890], r11
+ mov gword ptr [rbp-0x8A0], r11
mov rdi, gword ptr [r9+0x10]
- mov gword ptr [rbp-0x898], rdi
- mov esi, dword ptr [rbp-0x82C]
+ mov gword ptr [rbp-0x8A8], rdi
+ mov esi, dword ptr [rbp-0x83C]
mov r12d, esi
and r12d, 0xD1FFAB1E
- mov dword ptr [rbp-0x740], r12d
- mov ebx, dword ptr [rbp-0x830]
+ mov dword ptr [rbp-0x74C], r12d
+ mov ebx, dword ptr [rbp-0x840]
and ebx, 0xD1FFAB1E
- mov rsi, gword ptr [rbp-0x970]
- mov r12, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x980]
+ mov r12, gword ptr [rbp-0x988]
cmp rsi, r12
je SHORT G_M38429_IG113
;; size=131 bbWeight=4 PerfScore 112.00
G_M38429_IG112:
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r12, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r12]CORINFO_HELP_CHKCASTCLASS
- mov rsi, gword ptr [rbp-0x978]
+ mov rsi, gword ptr [rbp-0x988]
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
call [r12]CORINFO_HELP_CHKCASTCLASS
movsxd rsi, ebx
add rsi, qword ptr [rax+0x10]
- movsxd rdi, dword ptr [rbp-0x740]
- mov r12, gword ptr [rbp-0x970]
+ movsxd rdi, dword ptr [rbp-0x74C]
+ mov r12, gword ptr [rbp-0x980]
add rdi, qword ptr [r12+0x10]
sub rsi, rdi
jmp SHORT G_M38429_IG114
;; size=76 bbWeight=2 PerfScore 40.50
G_M38429_IG113:
- sub ebx, dword ptr [rbp-0x740]
+ sub ebx, dword ptr [rbp-0x74C]
movsxd rbx, ebx
mov r12, rsi
mov rsi, rbx
;; size=15 bbWeight=2 PerfScore 5.50
G_M38429_IG114:
test rsi, rsi
je G_M38429_IG121
;; size=9 bbWeight=4 PerfScore 5.00
G_M38429_IG115:
mov r10, qword ptr [rbp-0xF0]
test r10, r10
jl G_M38429_IG214
test r10, r10
jne SHORT G_M38429_IG116
mov rbx, r12
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov r10d, esi
jmp G_M38429_IG120
;; size=38 bbWeight=2 PerfScore 14.00
G_M38429_IG116:
- mov esi, dword ptr [rbp-0x82C]
+ mov esi, dword ptr [rbp-0x83C]
mov ebx, esi
and ebx, 0xD1FFAB1E
- mov r11d, dword ptr [rbp-0x830]
+ mov r11d, dword ptr [rbp-0x840]
and r11d, 0xD1FFAB1E
- mov dword ptr [rbp-0x75C], r11d
- mov rdi, gword ptr [rbp-0x978]
+ mov dword ptr [rbp-0x76C], r11d
+ mov rdi, gword ptr [rbp-0x988]
cmp r12, rdi
je SHORT G_M38429_IG117
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Buffers.ReadOnlySequenceSegment`1[ubyte]
mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [r11]CORINFO_HELP_CHKCASTCLASS
mov ecx, dword ptr [r12+0x24]
sub ecx, ebx
movsxd rdi, ecx
mov rsi, qword ptr [rbp-0xF0]
cmp rdi, rsi
jg SHORT G_M38429_IG118
test ecx, ecx
jl G_M38429_IG215
movsxd rcx, ecx
sub rsi, rcx
mov rcx, rsi
mov rdi, gword ptr [r12+0x08]
- mov rsi, gword ptr [rbp-0x978]
- mov edx, dword ptr [rbp-0x75C]
+ mov rsi, gword ptr [rbp-0x988]
+ mov edx, dword ptr [rbp-0x76C]
mov r8d, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
call [rax]System.Buffers.ReadOnlySequence`1[ubyte]:SeekMultiSegment(System.Buffers.ReadOnlySequenceSegment`1[ubyte],System.Object,int,long,int):System.SequencePosition
jmp SHORT G_M38429_IG119
;; size=150 bbWeight=2 PerfScore 52.00
G_M38429_IG117:
- mov r11d, dword ptr [rbp-0x75C]
+ mov r11d, dword ptr [rbp-0x76C]
sub r11d, ebx
movsxd r11, r11d
mov r10, qword ptr [rbp-0xF0]
cmp r11, r10
mov rsi, r10
jl G_M38429_IG216
;; size=32 bbWeight=2 PerfScore 8.00
G_M38429_IG118:
add ebx, esi
mov rsi, r12
mov rax, rsi
mov edx, ebx
;; size=10 bbWeight=2 PerfScore 2.00
G_M38429_IG119:
- mov ebx, dword ptr [rbp-0x82C]
+ mov ebx, dword ptr [rbp-0x83C]
mov r10d, ebx
and r10d, 0xD1FFAB1E
or r10d, edx
mov rbx, rax
;; size=22 bbWeight=2 PerfScore 4.00
G_M38429_IG120:
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x340], ymm0
vmovdqu ymmword ptr [rbp-0x320], ymm0
vmovdqu ymmword ptr [rbp-0x300], ymm0
vmovdqu ymmword ptr [rbp-0x2E0], ymm0
vmovdqu ymmword ptr [rbp-0x2C0], ymm0
vmovdqu ymmword ptr [rbp-0x2A0], ymm0
- mov gword ptr [rbp-0x758], rbx
- mov rbx, gword ptr [rbp-0x978]
- mov gword ptr [rbp-0x750], rbx
- mov dword ptr [rbp-0x748], r10d
- mov r10d, dword ptr [rbp-0x830]
- mov dword ptr [rbp-0x744], r10d
+ mov gword ptr [rbp-0x768], rbx
+ mov rbx, gword ptr [rbp-0x988]
+ mov gword ptr [rbp-0x760], rbx
+ mov dword ptr [rbp-0x758], r10d
+ mov r10d, dword ptr [rbp-0x840]
+ mov dword ptr [rbp-0x754], r10d
lea rdi, [rsp]
- lea rsi, [rbp-0x758]
+ lea rsi, [rbp-0x768]
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
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp+0x18]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x38], rcx
add rsi, 8
add rdi, 8
movsq
movsq
lea rdi, [rbp-0x340]
mov esi, 1
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [rcx]System.Text.Json.Utf8JsonReader:.ctor(System.Buffers.ReadOnlySequence`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x340]
mov ecx, 24
rep movsq
jmp G_M38429_IG122
;; size=236 bbWeight=2 PerfScore 172.67
G_M38429_IG121:
mov r10, qword ptr [rbp-0xF0]
movsxd rsi, r10d
cmp r10, rsi
jne G_M38429_IG191
mov esi, r10d
- cmp esi, dword ptr [rbp-0x828]
+ cmp esi, dword ptr [rbp-0x838]
ja G_M38429_IG217
mov r10d, esi
- add r10, bword ptr [rbp-0x968]
- mov r11d, dword ptr [rbp-0x828]
+ add r10, bword ptr [rbp-0x978]
+ mov r11d, dword ptr [rbp-0x838]
sub r11d, esi
vxorps ymm0, ymm0, ymm0
vmovdqu ymmword ptr [rbp-0x1C0], ymm0
vmovdqu ymmword ptr [rbp-0x1A0], ymm0
vmovdqu ymmword ptr [rbp-0x180], ymm0
vmovdqu ymmword ptr [rbp-0x160], ymm0
vmovdqu ymmword ptr [rbp-0x140], ymm0
vmovdqu ymmword ptr [rbp-0x120], ymm0
- mov r9, bword ptr [rbp-0x998]
+ mov r9, bword ptr [rbp-0x9B0]
add r9, 32
lea rdi, [rsp]
mov rsi, r9
mov ecx, 4
rep movsq
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x20], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rsi, r10
mov edx, r11d
lea rdi, [rbp-0x1C0]
mov ecx, 1
mov r9, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
call [r9]System.Text.Json.Utf8JsonReader:.ctor(System.ReadOnlySpan`1[ubyte],ubyte,System.Text.Json.JsonReaderState):this
lea rdi, bword ptr [rbp-0x280]
lea rsi, bword ptr [rbp-0x1C0]
mov ecx, 24
rep movsq
- mov rbx, gword ptr [rbp-0x978]
+ mov rbx, gword ptr [rbp-0x988]
;; size=212 bbWeight=2 PerfScore 160.17
G_M38429_IG122:
lea rdi, bword ptr [rbp-0xE8]
lea rsi, bword ptr [rbp-0x280]
mov ecx, 24
rep movsq
lea rdi, bword ptr [r15+0x38]
- mov rsi, gword ptr [rbp-0x890]
+ mov rsi, gword ptr [rbp-0x8A0]
call CORINFO_HELP_CHECKED_ASSIGN_REF
lea rdi, bword ptr [r15+0x30]
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
mov rdi, qword ptr [rax+0xB8]
mov qword ptr [r15+0x94], rdi
- mov rcx, gword ptr [rbp-0x898]
+ mov rcx, gword ptr [rbp-0x8A8]
test rcx, rcx
setne dl
movzx rdx, dl
mov dword ptr [rbp-0xF4], edx
test edx, edx
je SHORT G_M38429_IG124
;; size=101 bbWeight=4 PerfScore 160.00
G_M38429_IG123:
lea rdi, bword ptr [r15+0x40]
mov rsi, rcx
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r13
- mov rsi, gword ptr [rbp-0x888]
+ mov rsi, gword ptr [rbp-0x898]
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [rax]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
;; size=37 bbWeight=2 PerfScore 13.00
G_M38429_IG124:
- mov rax, gword ptr [rbp-0x888]
+ mov rax, gword ptr [rbp-0x898]
cmp byte ptr [rax+0x9C], 0
jne G_M38429_IG137
;; size=20 bbWeight=4 PerfScore 20.00
G_M38429_IG125:
cmp byte ptr [rbp-0xC4], 0
je G_M38429_IG134
cmp byte ptr [rbp-0xC0], 5
jne SHORT G_M38429_IG126
lea rdi, [rbp-0xE8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:Read():ubyte:this
;; size=41 bbWeight=2 PerfScore 19.50
G_M38429_IG126:
movzx rdi, byte ptr [rbp-0xC0]
mov eax, edi
cmp eax, 1
je SHORT G_M38429_IG127
cmp eax, 3
jne G_M38429_IG139
;; size=24 bbWeight=2 PerfScore 7.50
G_M38429_IG127:
mov eax, dword ptr [rbp-0x90]
mov ecx, eax
cmp edi, 1
je SHORT G_M38429_IG128
cmp edi, 3
jne SHORT G_M38429_IG129
;; size=18 bbWeight=2 PerfScore 7.50
G_M38429_IG128:
lea ecx, [rax-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG129:
- mov dword ptr [rbp-0x824], ecx
+ mov dword ptr [rbp-0x834], ecx
;; size=6 bbWeight=2 PerfScore 2.00
G_M38429_IG130:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
mov ecx, dword ptr [rbp-0x90]
mov edi, ecx
movzx rsi, byte ptr [rbp-0xC0]
cmp esi, 1
je SHORT G_M38429_IG132
;; size=40 bbWeight=16 PerfScore 116.00
G_M38429_IG131:
cmp esi, 3
jne SHORT G_M38429_IG133
;; size=5 bbWeight=8 PerfScore 10.00
G_M38429_IG132:
lea edi, [rcx-0x01]
;; size=3 bbWeight=8 PerfScore 4.00
G_M38429_IG133:
- mov ecx, dword ptr [rbp-0x824]
+ mov ecx, dword ptr [rbp-0x834]
cmp ecx, edi
jl SHORT G_M38429_IG130
jmp G_M38429_IG139
;; size=15 bbWeight=16 PerfScore 68.00
G_M38429_IG134:
- lea rdi, bword ptr [rbp-0x820]
+ lea rdi, bword ptr [rbp-0x830]
lea rsi, bword ptr [rbp-0xE8]
mov ecx, 24
rep movsq
mov esi, dword ptr [rbp-0x90]
mov eax, esi
movzx rdi, byte ptr [rbp-0xC0]
cmp edi, 1
je SHORT G_M38429_IG135
cmp edi, 3
jne SHORT G_M38429_IG136
;; size=48 bbWeight=2 PerfScore 62.00
G_M38429_IG135:
lea eax, [rsi-0x01]
;; size=3 bbWeight=2 PerfScore 1.00
G_M38429_IG136:
lea rdi, [rbp-0xE8]
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
call [rax]System.Text.Json.Utf8JsonReader:TrySkipPartial(int):ubyte:this
test eax, eax
jne SHORT G_M38429_IG139
lea rdi, bword ptr [rbp-0xE8]
- lea rsi, bword ptr [rbp-0x820]
+ lea rsi, bword ptr [rbp-0x830]
mov ecx, 24
rep movsq
jmp SHORT G_M38429_IG139
;; size=49 bbWeight=2 PerfScore 67.00
G_M38429_IG137:
lea rdi, [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:Read():ubyte:this
call [rcx]System.Text.Json.Utf8JsonReader:Read():ubyte:this
cmp dword ptr [rbp-0xF4], 0
jne SHORT G_M38429_IG138
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x30]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndSetMember(System.Object,byref,byref):ubyte:this
jmp SHORT G_M38429_IG139
;; size=60 bbWeight=2 PerfScore 35.50
G_M38429_IG138:
lea rcx, [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x888]
+ mov rdi, gword ptr [rbp-0x898]
mov rsi, r13
mov rdx, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
call [rax]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:ReadJsonAndAddExtensionProperty(System.Object,byref,byref):ubyte:this
;; size=32 bbWeight=2 PerfScore 10.50
G_M38429_IG139:
- mov rax, bword ptr [rbp-0x9A8]
+ mov rax, bword ptr [rbp-0x9C0]
mov rdi, rax
xor rsi, rsi
mov gword ptr [rdi], rsi
;; size=15 bbWeight=4 PerfScore 10.00
G_M38429_IG140:
mov gword ptr [rdi+0x08], rsi
;; size=4 bbWeight=4 PerfScore 4.00
G_M38429_IG141:
mov gword ptr [rdi+0x10], rsi
mov byte ptr [rdi+0x58], 0
- mov rdi, qword ptr [rbp-0x858]
+ mov rdi, qword ptr [rbp-0x868]
inc edi
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp edi, dword ptr [rcx+0x30]
- mov bword ptr [rbp-0x9A8], rax
+ mov bword ptr [rbp-0x9C0], rax
mov rdx, rdi
jl G_M38429_IG152
;; size=43 bbWeight=4 PerfScore 38.00
G_M38429_IG142:
- mov rbx, gword ptr [rbp-0x870]
- mov r12, bword ptr [rbp-0x868]
- mov rax, gword ptr [rbp-0x878]
+ mov rbx, gword ptr [rbp-0x880]
+ mov r12, bword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
mov r14, gword ptr [rax+0x10]
xor rdi, rdi
mov gword ptr [rax+0x10], rdi
mov rdi, 0xD1FFAB1E
mov esi, 129
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`5[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonReaderState,long,ubyte[],System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon]]:Return(System.ValueTuple`5[System.__Canon,System.Text.Json.JsonReaderState,long,System.__Canon,System.__Canon][],ubyte):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=93 bbWeight=0.50 PerfScore 8.88
G_M38429_IG143:
mov rcx, gword ptr [rbx+0x40]
test rcx, rcx
je SHORT G_M38429_IG144
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M38429_IG144:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rcx, r14
- mov bword ptr [rbp-0x960], rcx
+ mov bword ptr [rbp-0x970], rcx
cmp dword ptr [rbx+0xF4], 0
jle SHORT G_M38429_IG145
mov rdi, gword ptr [rcx+0x48]
mov rdx, 0xD1FFAB1E ; code for System.Collections.BitArray:HasAllSet():ubyte:this
cmp dword ptr [rdi], edi
call [rdx]System.Collections.BitArray:HasAllSet():ubyte:this
test eax, eax
jne G_M38429_IG151
- mov rsi, bword ptr [rbp-0x960]
+ mov rsi, bword ptr [rbp-0x970]
mov rsi, gword ptr [rsi+0x48]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_JsonRequiredPropertyMissing(System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Collections.BitArray)
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=85 bbWeight=0.50 PerfScore 11.62
G_M38429_IG145:
mov rsi, 0xD1FFAB1E ; System.Int16
cmp qword ptr [r13], rsi
je SHORT G_M38429_IG147
;; size=16 bbWeight=0.50 PerfScore 2.12
G_M38429_IG146:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int16
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=32 bbWeight=0.25 PerfScore 1.19
G_M38429_IG147:
movsx rsi, word ptr [r13+0x08]
mov word ptr [r12], si
cmp gword ptr [r15+0x68], 0
je SHORT G_M38429_IG148
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rcx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
cmp dword ptr [rdi], edi
call [rcx]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedPropertyCache(byref):this
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
;; size=45 bbWeight=0.50 PerfScore 9.25
G_M38429_IG148:
cmp gword ptr [rax+0x28], 0
je SHORT G_M38429_IG149
mov rsi, r14
mov rdi, gword ptr [r15+0x58]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
cmp dword ptr [rdi], edi
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:UpdateSortedParameterCache(byref):this
;; size=28 bbWeight=0.50 PerfScore 6.25
G_M38429_IG149:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M38429_IG150:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M38429_IG151:
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
jmp G_M38429_IG145
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M38429_IG152:
- mov rcx, gword ptr [rbp-0x880]
+ mov rcx, gword ptr [rbp-0x890]
jmp G_M38429_IG111
;; size=12 bbWeight=2 PerfScore 6.00
G_M38429_IG153:
cmp byte ptr [r15+0x8A], 0
jne SHORT G_M38429_IG154
cmp byte ptr [rbx+0x28], 1
jne G_M38429_IG218
mov byte ptr [r15+0x8A], 1
;; size=28 bbWeight=0.50 PerfScore 4.50
G_M38429_IG154:
cmp byte ptr [r15+0x8B], 0
je SHORT G_M38429_IG157
cmp byte ptr [r15+0x8A], 2
jae SHORT G_M38429_IG157
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, rbx
mov rcx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
call [r8]System.Text.Json.JsonSerializer:TryReadMetadata(System.Text.Json.Serialization.JsonConverter,System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref,byref):ubyte
test eax, eax
je G_M38429_IG171
cmp byte ptr [r15+0x8D], 4
jne SHORT G_M38429_IG156
;; size=70 bbWeight=0.50 PerfScore 9.25
G_M38429_IG155:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ResolveReferenceId[short](byref):short
call [rax]System.Text.Json.JsonSerializer:ResolveReferenceId[short](byref):short
mov word ptr [r12], ax
jmp G_M38429_IG149
;; size=25 bbWeight=0.50 PerfScore 3.25
G_M38429_IG156:
mov byte ptr [r15+0x8A], 2
- mov rax, gword ptr [rbp-0x860]
- mov r10, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=22 bbWeight=0.50 PerfScore 1.50
G_M38429_IG157:
test byte ptr [r15+0x8D], 8
je G_M38429_IG161
cmp byte ptr [r15+0x8E], 1
je G_M38429_IG161
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
mov rdi, r13
mov rsi, r10
mov rdx, r15
mov r8, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
call [r8]System.Text.Json.Serialization.JsonConverter:ResolvePolymorphicConverter(System.Text.Json.Serialization.Metadata.JsonTypeInfo,byref):System.Text.Json.Serialization.JsonConverter:this
- mov gword ptr [rbp-0x8A0], rax
+ mov gword ptr [rbp-0x8B0], rax
test rax, rax
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
je G_M38429_IG160
mov rdi, rax
mov rcx, qword ptr [rax]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov rdx, rax
lea r9, [rbp-0x100]
mov rsi, rbx
- mov rdi, gword ptr [rbp-0x8A0]
+ mov rdi, gword ptr [rbp-0x8B0]
mov rcx, r14
mov r8, r15
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
call [rax]System.Text.Json.Serialization.JsonConverter:OnTryReadAsObject(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this
mov r13d, eax
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int16
cmp qword ptr [rsi], rdi
je SHORT G_M38429_IG159
;; size=153 bbWeight=0.50 PerfScore 19.25
G_M38429_IG158:
mov rsi, gword ptr [rbp-0x100]
mov rdi, 0xD1FFAB1E ; System.Int16
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=29 bbWeight=0.25 PerfScore 1.12
G_M38429_IG159:
mov rdi, gword ptr [rbp-0x100]
movsx rdi, word ptr [rdi+0x08]
mov word ptr [r12], di
lea rdi, bword ptr [r15+0x58]
lea r14, bword ptr [r15+0x60]
mov rsi, gword ptr [r15+0x60]
mov rbx, gword ptr [r15+0x58]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov rdi, r14
mov rsi, rbx
call CORINFO_HELP_CHECKED_ASSIGN_REF
add r15, 48
xor edi, edi
mov esi, 2
test r13d, r13d
cmove edi, esi
mov byte ptr [r15+0x5E], dil
mov eax, r13d
jmp G_M38429_IG189
;; size=78 bbWeight=0.50 PerfScore 9.00
G_M38429_IG160:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M38429_IG161:
cmp byte ptr [r15+0x8F], 0
jne SHORT G_M38429_IG162
xor rdi, rdi
jmp SHORT G_M38429_IG163
;; size=14 bbWeight=0.50 PerfScore 3.12
G_M38429_IG162:
mov rdi, gword ptr [r15]
mov esi, dword ptr [r15+0x20]
add esi, -2
cmp esi, dword ptr [rdi+0x08]
jae G_M38429_IG192
imul rsi, rsi, 112
mov rdi, gword ptr [rdi+rsi+0x10]
;; size=28 bbWeight=0.50 PerfScore 6.12
G_M38429_IG163:
test rdi, rdi
- mov gword ptr [rbp-0x860], rax
+ mov gword ptr [rbp-0x870], rax
je G_M38429_IG167
mov rsi, r15
mov rdx, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
call [rdx]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:TryGetPrePopulatedValue(byref):ubyte:this
test eax, eax
je G_M38429_IG166
mov rsi, gword ptr [r15+0x50]
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M38429_IG164
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=66 bbWeight=0.50 PerfScore 9.12
G_M38429_IG164:
mov byte ptr [r15+0x8A], 4
lea rdi, bword ptr [r15+0x30]
mov rcx, rdi
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
cmp dword ptr [rax+0xF4], 0
- mov bword ptr [rbp-0x938], rcx
+ mov bword ptr [rbp-0x948], rcx
jle SHORT G_M38429_IG165
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x940], rax
- mov rcx, gword ptr [rbp-0x870]
+ mov gword ptr [rbp-0x950], rax
+ mov rcx, gword ptr [rbp-0x880]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x938]
+ mov rdi, bword ptr [rbp-0x948]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x940]
+ mov rsi, gword ptr [rbp-0x950]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M38429_IG04
;; size=125 bbWeight=0.50 PerfScore 11.62
G_M38429_IG165:
- mov rax, gword ptr [rbp-0x860]
+ mov rax, gword ptr [rbp-0x870]
jmp G_M38429_IG04
;; size=12 bbWeight=0.25 PerfScore 0.75
G_M38429_IG166:
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=7 bbWeight=0.25 PerfScore 0.25
G_M38429_IG167:
cmp byte ptr [r15+0x8A], 3
jae G_M38429_IG173
cmp byte ptr [r15+0x8B], 0
je SHORT G_M38429_IG168
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
call [rax]System.Text.Json.JsonSerializer:ValidateMetadataForObjectConverter(byref)
- mov r10, gword ptr [rbp-0x870]
+ mov r10, gword ptr [rbp-0x880]
;; size=46 bbWeight=0.50 PerfScore 6.25
G_M38429_IG168:
cmp byte ptr [r15+0x8D], 4
je G_M38429_IG155
mov rax, gword ptr [r15+0x58]
- mov gword ptr [rbp-0x948], rax
+ mov gword ptr [rbp-0x958], rax
cmp byte ptr [rax+0x103], 0
jne G_M38429_IG219
mov edi, dword ptr [rax+0xF0]
mov rdx, gword ptr [rax+0x08]
mov rdx, gword ptr [rdx+0x10]
cmp edi, dword ptr [rdx+0x10]
jne G_M38429_IG220
lea rdi, bword ptr [r15+0x30]
mov rdx, rdi
- mov bword ptr [rbp-0x950], rdx
+ mov bword ptr [rbp-0x960], rdx
cmp dword ptr [rax+0xF4], 0
jle SHORT G_M38429_IG169
mov rdi, 0xD1FFAB1E ; System.Collections.BitArray
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x958], rax
- mov rcx, gword ptr [rbp-0x948]
+ mov gword ptr [rbp-0x968], rax
+ mov rcx, gword ptr [rbp-0x958]
mov esi, dword ptr [rcx+0xF4]
mov rdi, rax
xor edx, edx
mov rcx, 0xD1FFAB1E ; code for System.Collections.BitArray:.ctor(int,ubyte):this
call [rcx]System.Collections.BitArray:.ctor(int,ubyte):this
- mov rdi, bword ptr [rbp-0x950]
+ mov rdi, bword ptr [rbp-0x960]
lea rdi, bword ptr [rdi+0x48]
- mov rsi, gword ptr [rbp-0x958]
+ mov rsi, gword ptr [rbp-0x968]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=159 bbWeight=0.50 PerfScore 19.62
G_M38429_IG169:
xor rdi, rdi
mov gword ptr [r15+0x30], rdi
mov rdi, r13
mov rsi, r15
mov rdx, r14
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
call [rax+0x08]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:InitializeConstructorArgumentCaches(byref,System.Text.Json.JsonSerializerOptions):this
mov byte ptr [r15+0x8A], 3
;; size=34 bbWeight=0.50 PerfScore 5.00
G_M38429_IG170:
mov rdi, r13
mov rsi, r15
mov rdx, rbx
mov rcx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
call [rax]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:ReadConstructorArgumentsWithContinuation(byref,byref,System.Text.Json.JsonSerializerOptions):ubyte:this
test eax, eax
jne SHORT G_M38429_IG174
;; size=28 bbWeight=0.50 PerfScore 2.75
G_M38429_IG171:
mov word ptr [r12], 0
xor eax, eax
;; size=9 bbWeight=0.50 PerfScore 0.62
G_M38429_IG172:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M38429_IG173:
jmp SHORT G_M38429_IG170
;; size=2 bbWeight=0.25 PerfScore 0.50
G_M38429_IG174:
lea rdx, bword ptr [r15+0x30]
mov rbx, rdx
mov rsi, rbx
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
mov r13, rax
call [r13+0x18]System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:CreateObject(byref):System.Object:this
mov r13, rax
mov rsi, 0xD1FFAB1E ; System.Int16
cmp qword ptr [r13], rsi
je SHORT G_M38429_IG176
;; size=47 bbWeight=0.50 PerfScore 6.50
G_M38429_IG175:
mov rsi, r13
mov rdi, 0xD1FFAB1E ; System.Int16
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=25 bbWeight=0.25 PerfScore 0.94
G_M38429_IG176:
mov rdi, 0xD1FFAB1E ; System.Int16
call CORINFO_HELP_NEWSFAST
movsx rdi, word ptr [r13+0x08]
mov word ptr [rax+0x08], di
mov r13, rax
test byte ptr [r15+0x8D], 2
je SHORT G_M38429_IG177
mov rdi, gword ptr [r15+0x08]
mov rsi, gword ptr [r15+0x10]
mov rdx, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Text.Json.Serialization.ReferenceResolver:AddReference(System.String,System.Object):this
xor rsi, rsi
mov gword ptr [r15+0x10], rsi
;; size=64 bbWeight=0.50 PerfScore 11.50
G_M38429_IG177:
- mov rax, gword ptr [rbp-0x870]
+ mov rax, gword ptr [rbp-0x880]
mov rcx, gword ptr [rax+0x38]
test rcx, rcx
je SHORT G_M38429_IG178
mov rsi, r13
mov rdi, gword ptr [rcx+0x08]
call [rcx+0x18]System.Action`1[System.__Canon]:Invoke(System.__Canon):this
;; size=26 bbWeight=0.50 PerfScore 4.75
G_M38429_IG178:
- mov rcx, gword ptr [rbp-0x878]
+ mov rcx, gword ptr [rbp-0x888]
cmp dword ptr [rcx+0x30], 0
jle G_M38429_IG182
xor r8d, r8d
;; size=20 bbWeight=0.50 PerfScore 2.62
G_M38429_IG179:
mov rsi, gword ptr [rcx+0x18]
mov rdx, rsi
cmp r8d, dword ptr [rdx+0x08]
jae G_M38429_IG192
lea rdi, [r8+2*r8]
mov r9, gword ptr [rdx+8*rdi+0x10]
- mov gword ptr [rbp-0x8A8], r9
- mov qword ptr [rbp-0x850], r8
+ mov gword ptr [rbp-0x8B8], r9
+ mov qword ptr [rbp-0x860], r8
cmp r8d, dword ptr [rsi+0x08]
jae G_M38429_IG192
lea rsi, bword ptr [rsi+8*rdi+0x10]
mov r10, gword ptr [rsi+0x08]
- mov gword ptr [rbp-0x8B0], r10
+ mov gword ptr [rbp-0x8C0], r10
mov r11, gword ptr [rsi+0x10]
- mov gword ptr [rbp-0x8B8], r11
+ mov gword ptr [rbp-0x8C8], r11
test r11, r11
jne G_M38429_IG183
;; size=86 bbWeight=4 PerfScore 92.00
G_M38429_IG180:
test r10, r10
jne SHORT G_M38429_IG181
movsx rsi, byte ptr [r9+0x97]
;; size=13 bbWeight=2 PerfScore 10.50
G_M38429_IG181:
mov r11, gword ptr [r9+0x28]
mov rsi, r13
mov rdx, r10
mov rdi, gword ptr [r11+0x08]
call [r11+0x18]System.Action`2[System.__Canon,System.__Canon]:Invoke(System.__Canon,System.__Canon):this
mov rdi, rbx
- mov rax, gword ptr [rbp-0x8A8]
+ mov rax, gword ptr [rbp-0x8B8]
cmp byte ptr [rax+0x95], 0
je G_M38429_IG187
mov rdi, gword ptr [rdi+0x48]
mov ecx, dword ptr [rax+0x8C]
cmp ecx, dword ptr [rdi+0x10]
jae G_M38429_IG221
mov eax, 1
shlx esi, eax, ecx
mov rdx, gword ptr [rdi+0x08]
mov eax, ecx
sar eax, 5
cmp eax, dword ptr [rdx+0x08]
jae G_M38429_IG192
sar ecx, 5
mov eax, ecx
lea rdx, bword ptr [rdx+4*rax+0x10]
or dword ptr [rdx], esi
inc dword ptr [rdi+0x14]
jmp G_M38429_IG187
;; size=108 bbWeight=2 PerfScore 76.00
G_M38429_IG182:
- mov bword ptr [rbp-0x9A8], rbx
+ mov bword ptr [rbp-0x9C0], rbx
mov rax, rcx
- mov rbx, gword ptr [rbp-0x870]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M38429_IG143
;; size=22 bbWeight=0.25 PerfScore 1.06
G_M38429_IG183:
- mov bword ptr [rbp-0x868], r12
+ mov bword ptr [rbp-0x878], r12
mov rdi, r13
mov rsi, r9
mov rdx, r14
mov r12, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
call [r12]System.Text.Json.JsonSerializer:CreateExtensionDataProperty(System.Object,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.JsonSerializerOptions)
- mov rdi, gword ptr [rbp-0x8A8]
+ mov rdi, gword ptr [rbp-0x8B8]
mov rsi, r13
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x48]
call [rax+0x28]System.Text.Json.Serialization.Metadata.JsonPropertyInfo:GetValueAsObject(System.Object):System.Object:this
mov r12, rax
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Text.Json.JsonElement]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFINTERFACE
call [rax]CORINFO_HELP_ISINSTANCEOFINTERFACE
- mov gword ptr [rbp-0x8C0], rax
+ mov gword ptr [rbp-0x8D0], rax
test rax, rax
je SHORT G_M38429_IG186
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
mov rsi, 0xD1FFAB1E ; System.Text.Json.JsonElement
- mov r12, gword ptr [rbp-0x8B0]
+ mov r12, gword ptr [rbp-0x8C0]
cmp qword ptr [r12], rsi
je SHORT G_M38429_IG185
;; size=120 bbWeight=2 PerfScore 51.50
G_M38429_IG184:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Text.Json.JsonElement
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rcx]CORINFO_HELP_UNBOX
- mov rax, gword ptr [rbp-0x8C0]
+ mov rax, gword ptr [rbp-0x8D0]
;; size=32 bbWeight=1 PerfScore 4.75
G_M38429_IG185:
mov rdx, gword ptr [r12+0x08]
mov rcx, qword ptr [r12+0x10]
mov rdi, rax
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.Text.Json.JsonElement]:set_Item(System.__Canon,System.Text.Json.JsonElement):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
jmp SHORT G_M38429_IG187
;; size=42 bbWeight=2 PerfScore 23.00
G_M38429_IG186:
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.IDictionary`2[System.String,System.Object]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTINTERFACE
call [rax]CORINFO_HELP_CHKCASTINTERFACE
mov rdi, rax
- mov rdx, gword ptr [rbp-0x8B0]
- mov rsi, gword ptr [rbp-0x8B8]
+ mov rdx, gword ptr [rbp-0x8C0]
+ mov rsi, gword ptr [rbp-0x8C8]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
call [r11]System.Collections.Generic.IDictionary`2[System.__Canon,System.__Canon]:set_Item(System.__Canon,System.__Canon):this
- mov r12, bword ptr [rbp-0x868]
+ mov r12, bword ptr [rbp-0x878]
;; size=62 bbWeight=2 PerfScore 20.50
G_M38429_IG187:
- mov rdi, qword ptr [rbp-0x850]
+ mov rdi, qword ptr [rbp-0x860]
inc edi
- mov rax, gword ptr [rbp-0x878]
+ mov rax, gword ptr [rbp-0x888]
cmp edi, dword ptr [rax+0x30]
mov rcx, rax
mov r8, rdi
jl G_M38429_IG179
;; size=31 bbWeight=4 PerfScore 27.00
G_M38429_IG188:
mov r14, gword ptr [rcx+0x18]
xor rdi, rdi
mov gword ptr [rcx+0x18], rdi
mov rdi, 0xD1FFAB1E
mov esi, 128
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Buffers.ArrayPool`1[System.ValueTuple`3[System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Object,System.String]]:s_shared
mov rdi, gword ptr [rdi]
mov rsi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Buffers.SharedArrayPool`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:Return(System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon][],ubyte):this
- mov bword ptr [rbp-0x9A8], rbx
- mov rax, gword ptr [rbp-0x878]
- mov rbx, gword ptr [rbp-0x870]
+ mov bword ptr [rbp-0x9C0], rbx
+ mov rax, gword ptr [rbp-0x888]
+ mov rbx, gword ptr [rbp-0x880]
jmp G_M38429_IG143
;; size=91 bbWeight=0.50 PerfScore 9.38
G_M38429_IG189:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M38429_IG190:
vzeroupper
- add rsp, 0x9E8
+ add rsp, 0x9F8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
G_M38429_IG191:
call CORINFO_HELP_OVERFLOW
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M38429_IG192:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M38429_IG193:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M38429_IG194
mov rax, gword ptr [rdi+0x28]
jmp SHORT G_M38429_IG195
;; size=22 bbWeight=0 PerfScore 0.00
G_M38429_IG194:
mov rax, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M38429_IG195:
- mov bword ptr [rbp-0x980], rdx
+ mov bword ptr [rbp-0x990], rdx
mov rdi, rdx
- mov dword ptr [rbp-0x834], r8d
+ mov dword ptr [rbp-0x844], r8d
mov esi, r8d
mov rdx, gword ptr [rax+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M38429_IG198
mov r15, r14
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M38429_IG196
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M38429_IG197
;; size=97 bbWeight=0 PerfScore 0.00
G_M38429_IG196:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M38429_IG197:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M38429_IG198:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M38429_IG199
lea rdi, bword ptr [rbp-0x420]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x420]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M38429_IG212
;; size=67 bbWeight=0 PerfScore 0.00
G_M38429_IG199:
- mov r13d, dword ptr [rbp-0x834]
+ mov r13d, dword ptr [rbp-0x844]
test r13d, r13d
jne SHORT G_M38429_IG200
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M38429_IG201
;; size=47 bbWeight=0 PerfScore 0.00
G_M38429_IG200:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x980]
+ mov rsi, bword ptr [rbp-0x990]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M38429_IG201:
lea rdi, bword ptr [r14+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp G_M38429_IG212
;; size=14 bbWeight=0 PerfScore 0.00
G_M38429_IG202:
mov rsi, gword ptr [rdi+0xB0]
mov rdi, gword ptr [rsi+0x20]
- mov rbx, gword ptr [rbp-0x918]
+ mov rbx, gword ptr [rbp-0x928]
mov rsi, gword ptr [rbx+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=38 bbWeight=0 PerfScore 0.00
G_M38429_IG203:
- mov r14, bword ptr [rbp-0x9A8]
+ mov r14, bword ptr [rbp-0x9C0]
mov rdi, r14
cmp byte ptr [rdi+0x5E], 1
je SHORT G_M38429_IG204
mov rdx, gword ptr [rdi+0x28]
jmp SHORT G_M38429_IG205
;; size=22 bbWeight=0 PerfScore 0.00
G_M38429_IG204:
mov rdx, gword ptr [rdi+0x30]
;; size=4 bbWeight=0 PerfScore 0.00
G_M38429_IG205:
- mov rdi, bword ptr [rbp-0x990]
- mov esi, dword ptr [rbp-0x83C]
+ mov rdi, bword ptr [rbp-0x9A0]
+ mov esi, dword ptr [rbp-0x84C]
mov rdx, gword ptr [rdx+0x88]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
call [rax]System.Text.Json.JsonSerializer:GetMetadataPropertyName(System.ReadOnlySpan`1[ubyte],System.Text.Json.Serialization.Metadata.PolymorphicTypeResolver):ubyte
test eax, eax
je G_M38429_IG208
mov r15, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M38429_IG206
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M38429_IG207
;; size=90 bbWeight=0 PerfScore 0.00
G_M38429_IG206:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r14, rax
lea rdi, bword ptr [r14+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r14
;; size=50 bbWeight=0 PerfScore 0.00
G_M38429_IG207:
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov edi, 0x19D3
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E
mov esi, 53
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[System.Object]:Value
mov rsi, gword ptr [rdi]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=111 bbWeight=0 PerfScore 0.00
G_M38429_IG208:
mov rcx, gword ptr [r15+0x58]
cmp dword ptr [rcx+0xF8], 3
jne SHORT G_M38429_IG209
lea rdi, bword ptr [rbp-0x678]
mov rsi, rbx
mov ecx, 24
rep movsq
lea rdi, [rbp-0x678]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Utf8JsonReader:GetString():System.String:this
call [rax]System.Text.Json.Utf8JsonReader:GetString():System.String:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_CHECKED_ASSIGN_REF
jmp SHORT G_M38429_IG212
;; size=64 bbWeight=0 PerfScore 0.00
G_M38429_IG209:
mov rbx, r14
- mov r13d, dword ptr [rbp-0x83C]
+ mov r13d, dword ptr [rbp-0x84C]
test r13d, r13d
jne SHORT G_M38429_IG210
mov rdi, 0xD1FFAB1E
mov esi, 20
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rsi, 0xD1FFAB1E ; data for System.Array+EmptyArray`1[ubyte]:Value
mov rsi, gword ptr [rsi]
jmp SHORT G_M38429_IG211
;; size=50 bbWeight=0 PerfScore 0.00
G_M38429_IG210:
mov esi, r13d
mov rdi, 0xD1FFAB1E ; ubyte[]
call CORINFO_HELP_NEWARR_1_VC
mov r15, rax
lea rdi, bword ptr [r15+0x10]
mov edx, r13d
- mov rsi, bword ptr [rbp-0x990]
+ mov rsi, bword ptr [rbp-0x9A0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
mov rsi, r15
;; size=50 bbWeight=0 PerfScore 0.00
G_M38429_IG211:
lea rdi, bword ptr [rbx+0x08]
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=9 bbWeight=0 PerfScore 0.00
G_M38429_IG212:
mov edi, 0x1979
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String
call [rax]System.SR:GetResourceString(System.String):System.String
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException(System.String)
int3
;; size=51 bbWeight=0 PerfScore 0.00
G_M38429_IG213:
mov edi, 9
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException(int)
call [rax]System.ThrowHelper:ThrowArgumentException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M38429_IG214:
mov rdi, r10
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
call [rax]System.ThrowHelper:ThrowStartOrEndArgumentValidationException(long)
int3
;; size=16 bbWeight=0 PerfScore 0.00
G_M38429_IG215:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException_PositionOutOfRange()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M38429_IG216:
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M38429_IG217:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M38429_IG218:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowJsonException_DeserializeUnableToConvertValue(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M38429_IG219:
mov rdi, gword ptr [rax+0xB0]
mov rdi, gword ptr [rdi+0x20]
mov rsi, gword ptr [rax+0xB8]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_NoMetadataForTypeProperties(System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver,System.Type)
int3
;; size=31 bbWeight=0 PerfScore 0.00
G_M38429_IG220:
mov rdi, gword ptr [r13+0x20]
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConstructorParameterIncompleteBinding(System.Type)
int3
;; size=17 bbWeight=0 PerfScore 0.00
G_M38429_IG221:
mov edi, ecx
mov rax, 0xD1FFAB1E ; code for System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
call [rax]System.Collections.BitArray:ThrowArgumentOutOfRangeException(int)
int3
;; size=15 bbWeight=0 PerfScore 0.00
-; Total bytes of code 8454, prolog size 93, PerfScore 4055.73, instruction count 1813, allocated bytes for code 8454 (MethodHash=ca5a69e2) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)
+; Total bytes of code 8316, prolog size 76, PerfScore 3838.48, instruction count 1773, allocated bytes for code 8316 (MethodHash=ca5a69e2) for method System.Text.Json.Serialization.Converters.ObjectWithParameterizedConstructorConverter`1[short]:OnTryRead(byref,System.Type,System.Text.Json.JsonSerializerOptions,byref,byref):ubyte:this (FullOpts)