-510 (-7.54 % of base) - System.Text.RegularExpressions.RegexPrefixAnalyzer:g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
; Assembly listing for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,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; 54 single block inlinees; 22 inlinees without PGO data
+; 0 inlinees with PGO data; 54 single block inlinees; 20 inlinees without PGO data
; Final local variable assignments
;
-; V00 arg0 [V00,T17] ( 29, 27 ) ref -> r15 class-hnd single-def <System.Text.RegularExpressions.RegexNode>
-; V01 arg1 [V01,T04] ( 47, 78 ) ref -> rbx class-hnd single-def <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
-; V02 arg2 [V02,T18] ( 22, 26 ) byref -> r14 single-def
-; V03 arg3 [V03,T34] ( 7, 11.50) ubyte -> [rbp-0x2C] single-def
+; V00 arg0 [V00,T09] ( 29, 27 ) ref -> r15 class-hnd single-def <System.Text.RegularExpressions.RegexNode>
+; V01 arg1 [V01,T00] ( 47, 78 ) ref -> rbx class-hnd single-def <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
+; V02 arg2 [V02,T10] ( 22, 26 ) byref -> r14 single-def
+; V03 arg3 [V03,T26] ( 7, 11.50) ubyte -> r13 single-def
;* V04 loc0 [V04 ] ( 0, 0 ) ubyte -> zero-ref
-; V05 loc1 [V05,T113] ( 2, 1 ) ref -> rax class-hnd exact single-def <System.String>
-; V06 loc2 [V06,T22] ( 15, 21 ) int -> registers
-; V07 loc3 [V07,T98] ( 2, 2.50) ref -> r12 class-hnd exact <System.String>
-; V08 loc4 [V08,T76] ( 2, 4.50) int -> r13
-; V09 loc5 [V09,T41] ( 6, 9.50) int -> [rbp-0x30]
-; V10 loc6 [V10,T59] ( 4, 7 ) ref -> r13 class-hnd exact <System.String>
-; V11 loc7 [V11,T108] ( 2, 1 ) int -> rdi
-; V12 loc8 [V12,T78] ( 2, 4 ) ref -> rax class-hnd exact <System.String>
-; V13 loc9 [V13,T77] ( 2, 4.50) int -> r13
-; V14 loc10 [V14,T42] ( 6, 9.50) int -> r12
-; V15 loc11 [V15,T73] ( 3, 5 ) int -> r12
-;* V16 loc12 [V16,T121] ( 0, 0 ) int -> zero-ref
-; V17 loc13 [V17,T23] ( 4, 21 ) int -> r12
-; V18 loc14 [V18,T31] ( 6, 15 ) ubyte -> [rbp-0x34]
+; V05 loc1 [V05,T104] ( 2, 1 ) ref -> rax class-hnd exact single-def <System.String>
+; V06 loc2 [V06,T13] ( 15, 21 ) int -> registers
+; V07 loc3 [V07,T89] ( 2, 2.50) ref -> r12 class-hnd exact <System.String>
+; V08 loc4 [V08,T68] ( 2, 4.50) int -> r13
+; V09 loc5 [V09,T33] ( 6, 9.50) int -> [rbp-0x2C]
+; V10 loc6 [V10,T51] ( 4, 7 ) ref -> r13 class-hnd exact <System.String>
+; V11 loc7 [V11,T99] ( 2, 1 ) int -> rdi
+; V12 loc8 [V12,T70] ( 2, 4 ) ref -> rax class-hnd exact <System.String>
+; V13 loc9 [V13,T69] ( 2, 4.50) int -> r13
+; V14 loc10 [V14,T34] ( 6, 9.50) int -> r12
+; V15 loc11 [V15,T65] ( 3, 5 ) int -> r12
+;* V16 loc12 [V16,T112] ( 0, 0 ) int -> zero-ref
+; V17 loc13 [V17,T35] ( 4, 9 ) int -> r12
+; V18 loc14 [V18,T23] ( 6, 15 ) ubyte -> [rbp-0x30]
;* V19 loc15 [V19 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.Nullable`1[int]>
-; V20 loc16 [V20,T19] ( 6, 25.50) ref -> [rbp-0x270] class-hnd exact single-def <System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
-; V21 loc17 [V21,T02] ( 12, 94.50) ref -> [rbp-0x278] class-hnd exact single-def <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
-;* V22 loc18 [V22,T122] ( 0, 0 ) int -> zero-ref
-; V23 loc19 [V23 ] ( 4, 12 ) int -> [rbp-0x40] do-not-enreg[X] addr-exposed ld-addr-op
-; V24 loc20 [V24,T15] ( 2, 32 ) struct (48) [rbp-0x70] do-not-enreg[SF] must-init ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
+; V20 loc16 [V20,T05] ( 6, 33.50) ref -> [rbp-0x260] class-hnd exact single-def <System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
+; V21 loc17 [V21,T04] ( 10, 34.50) ref -> [rbp-0x268] class-hnd exact single-def <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
+;* V22 loc18 [V22,T113] ( 0, 0 ) int -> zero-ref
+; V23 loc19 [V23 ] ( 4, 12 ) int -> [rbp-0x38] do-not-enreg[X] addr-exposed ld-addr-op
+; V24 loc20 [V24 ] ( 8, 68 ) struct (48) [rbp-0x68] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
;* V25 loc21 [V25 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
;* V26 loc22 [V26 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
-; V27 loc23 [V27 ] ( 10, 19 ) struct (48) [rbp-0xA0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
+; V27 loc23 [V27 ] ( 10, 19 ) struct (48) [rbp-0x98] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
;* V28 loc24 [V28 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
; V29 OutArgs [V29 ] ( 1, 1 ) struct (32) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V30 tmp1 [V30,T89] ( 3, 3 ) ref -> [rbp-0x280] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
-; V31 tmp2 [V31,T90] ( 3, 3 ) ref -> rax class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
+; V30 tmp1 [V30,T80] ( 3, 3 ) ref -> [rbp-0x270] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
+; V31 tmp2 [V31,T81] ( 3, 3 ) ref -> rax class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
;* V32 tmp3 [V32 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
;* V33 tmp4 [V33 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.__Canon>
;* V34 tmp5 [V34 ] ( 0, 0 ) struct (16) zero-ref "location for address-of(RValue)" <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
;* V35 tmp6 [V35 ] ( 0, 0 ) struct (16) zero-ref "location for address-of(RValue)" <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
-; V36 tmp7 [V36,T51] ( 2, 8 ) ref -> rax class-hnd exact "impAppendStmt" <System.String>
-; V37 tmp8 [V37,T80] ( 1, 4 ) struct (32) [rbp-0xC0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V38 tmp9 [V38,T102] ( 2, 2 ) int -> rax "impAppendStmt"
-; V39 tmp10 [V39,T81] ( 1, 4 ) struct (32) [rbp-0xE0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V40 tmp11 [V40,T101] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.String>
-;* V41 tmp12 [V41,T119] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-;* V42 tmp13 [V42,T120] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V43 tmp14 [V43,T52] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.String>
-; V44 tmp15 [V44,T82] ( 1, 4 ) struct (32) [rbp-0x100] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V36 tmp7 [V36,T44] ( 2, 8 ) ref -> rax class-hnd exact "impAppendStmt" <System.String>
+; V37 tmp8 [V37,T71] ( 1, 4 ) struct (32) [rbp-0xB8] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V38 tmp9 [V38,T93] ( 2, 2 ) int -> rax "impAppendStmt"
+; V39 tmp10 [V39,T72] ( 1, 4 ) struct (32) [rbp-0xD8] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V40 tmp11 [V40,T92] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.String>
+;* V41 tmp12 [V41,T110] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+;* V42 tmp13 [V42,T111] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V43 tmp14 [V43,T45] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.String>
+; V44 tmp15 [V44,T73] ( 1, 4 ) struct (32) [rbp-0xF8] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
;* V45 tmp16 [V45 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V46 tmp17 [V46 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V47 tmp18 [V47,T83] ( 1, 4 ) struct (32) [rbp-0x120] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V48 tmp19 [V48,T104] ( 3, 1.50) ref -> rdi class-hnd exact single-def "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V49 tmp20 [V49,T99] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
-; V50 tmp21 [V50,T68] ( 5, 5 ) struct (32) [rbp-0x140] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V51 tmp22 [V51,T114] ( 2, 1 ) int -> r13 "Inline return value spill temp"
-; V52 tmp23 [V52,T95] ( 3, 3 ) int -> r13 "Inlining Arg"
-; V53 tmp24 [V53,T60] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V54 tmp25 [V54,T45] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V55 tmp26 [V55,T24] ( 5, 20 ) struct (32) [rbp-0x160] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V56 tmp27 [V56,T61] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V57 tmp28 [V57,T46] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V58 tmp29 [V58,T25] ( 5, 20 ) struct (32) [rbp-0x180] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V59 tmp30 [V59,T105] ( 3, 1.50) ref -> rdi class-hnd exact single-def "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V60 tmp31 [V60,T100] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
-; V61 tmp32 [V61,T69] ( 5, 5 ) struct (32) [rbp-0x1A0] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V62 tmp33 [V62,T115] ( 2, 1 ) int -> r13 "Inline return value spill temp"
-; V63 tmp34 [V63,T96] ( 3, 3 ) int -> r13 "Inlining Arg"
-; V64 tmp35 [V64,T62] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V65 tmp36 [V65,T47] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V66 tmp37 [V66,T26] ( 5, 20 ) struct (32) [rbp-0x1C0] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V67 tmp38 [V67,T106] ( 3, 1.50) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-; V68 tmp39 [V68,T86] ( 4, 3.50) ref -> rdi single-def "ISINST eval op1"
+; V47 tmp18 [V47,T74] ( 1, 4 ) struct (32) [rbp-0x118] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V48 tmp19 [V48,T95] ( 3, 1.50) ref -> rdi class-hnd exact single-def "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V49 tmp20 [V49,T90] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
+; V50 tmp21 [V50,T60] ( 5, 5 ) struct (32) [rbp-0x138] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V51 tmp22 [V51,T105] ( 2, 1 ) int -> r13 "Inline return value spill temp"
+; V52 tmp23 [V52,T86] ( 3, 3 ) int -> r13 "Inlining Arg"
+; V53 tmp24 [V53,T52] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V54 tmp25 [V54,T38] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V55 tmp26 [V55,T14] ( 5, 20 ) struct (32) [rbp-0x158] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V56 tmp27 [V56,T53] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V57 tmp28 [V57,T39] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V58 tmp29 [V58,T15] ( 5, 20 ) struct (32) [rbp-0x178] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V59 tmp30 [V59,T96] ( 3, 1.50) ref -> rdi class-hnd exact single-def "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V60 tmp31 [V60,T91] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
+; V61 tmp32 [V61,T61] ( 5, 5 ) struct (32) [rbp-0x198] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V62 tmp33 [V62,T106] ( 2, 1 ) int -> r13 "Inline return value spill temp"
+; V63 tmp34 [V63,T87] ( 3, 3 ) int -> r13 "Inlining Arg"
+; V64 tmp35 [V64,T54] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V65 tmp36 [V65,T40] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V66 tmp37 [V66,T16] ( 5, 20 ) struct (32) [rbp-0x1B8] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V67 tmp38 [V67,T97] ( 3, 1.50) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+; V68 tmp39 [V68,T77] ( 4, 3.50) ref -> rdi single-def "ISINST eval op1"
;* V69 tmp40 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-; V70 tmp41 [V70,T109] ( 2, 1 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-; V71 tmp42 [V71,T91] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-; V72 tmp43 [V72,T107] ( 3, 1.50) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-; V73 tmp44 [V73,T87] ( 4, 3.50) ref -> rdi single-def "ISINST eval op1"
+; V70 tmp41 [V70,T100] ( 2, 1 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+; V71 tmp42 [V71,T82] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+; V72 tmp43 [V72,T98] ( 3, 1.50) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+; V73 tmp44 [V73,T78] ( 4, 3.50) ref -> rdi single-def "ISINST eval op1"
;* V74 tmp45 [V74 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-; V75 tmp46 [V75,T110] ( 2, 1 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-; V76 tmp47 [V76,T92] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-; V77 tmp48 [V77,T49] ( 3, 8 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-; V78 tmp49 [V78,T20] ( 4, 22 ) ref -> rdi "ISINST eval op1"
+; V75 tmp46 [V75,T101] ( 2, 1 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+; V76 tmp47 [V76,T83] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+; V77 tmp48 [V77,T42] ( 3, 8 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+; V78 tmp49 [V78,T11] ( 4, 22 ) ref -> rdi "ISINST eval op1"
;* V79 tmp50 [V79 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-; V80 tmp51 [V80,T66] ( 2, 4 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-; V81 tmp52 [V81,T35] ( 3, 12 ) ref -> rcx class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-; V82 tmp53 [V82,T40] ( 3, 10 ) int -> rdx "Inline stloc first use temp"
-; V83 tmp54 [V83,T50] ( 3, 8 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-; V84 tmp55 [V84,T21] ( 4, 22 ) ref -> rdi "ISINST eval op1"
+; V80 tmp51 [V80,T58] ( 2, 4 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+; V81 tmp52 [V81,T27] ( 3, 12 ) ref -> rcx class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+; V82 tmp53 [V82,T32] ( 3, 10 ) int -> rdx "Inline stloc first use temp"
+; V83 tmp54 [V83,T43] ( 3, 8 ) ref -> rdi class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+; V84 tmp55 [V84,T12] ( 4, 22 ) ref -> rdi "ISINST eval op1"
;* V85 tmp56 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-; V86 tmp57 [V86,T67] ( 2, 4 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-; V87 tmp58 [V87,T36] ( 3, 12 ) ref -> rdx class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-; V88 tmp59 [V88,T53] ( 2, 8 ) int -> r10 "Inlining Arg"
-; V89 tmp60 [V89,T57] ( 1, 8 ) struct (48) [rbp-0x1F0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
-;* V90 tmp61 [V90,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V86 tmp57 [V86,T59] ( 2, 4 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+; V87 tmp58 [V87,T28] ( 3, 12 ) ref -> rdx class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+; V88 tmp59 [V88,T46] ( 2, 8 ) int -> r9 "Inlining Arg"
+; V89 tmp60 [V89,T21] ( 2, 16 ) struct (48) [rbp-0x1E8] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
+;* V90 tmp61 [V90,T22] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V91 tmp62 [V91 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V92 tmp63 [V92,T12] ( 4, 32 ) byref -> rax "Inline stloc first use temp"
+; V92 tmp63 [V92,T01] ( 4, 48 ) byref -> rax "Inline stloc first use temp"
;* V93 tmp64 [V93 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V94 tmp65 [V94 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V95 tmp66 [V95 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
;* V96 tmp67 [V96 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V97 tmp68 [V97 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V98 tmp69 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Text.RegularExpressions.RegexCharClass>
;* V99 tmp70 [V99 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V100 tmp71 [V100 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]>
;* V101 tmp72 [V101 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-;* V102 tmp73 [V102,T16] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V103 tmp74 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]>
-; V104 tmp75 [V104,T103] ( 2, 2 ) struct (48) [rbp-0x220] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
-; V105 tmp76 [V105,T54] ( 2, 8 ) int -> r15 "Inlining Arg"
-; V106 tmp77 [V106,T63] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
-; V107 tmp78 [V107,T48] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V108 tmp79 [V108,T27] ( 5, 20 ) struct (32) [rbp-0x240] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
-; V109 tmp80 [V109,T70] ( 5, 5 ) int -> r13 "Single return block return value"
-; V110 tmp81 [V110,T71] ( 4, 5 ) ubyte -> [rbp-0x244] "field V19.hasValue (fldOffset=0x0)" P-INDEP
-; V111 tmp82 [V111,T72] ( 4, 5 ) int -> [rbp-0x248] "field V19.value (fldOffset=0x4)" P-INDEP
-; V112 tmp83 [V112,T13] ( 3, 24 ) ref -> [rbp-0x288] "field V26.Item1 (fldOffset=0x0)" P-INDEP
-; V113 tmp84 [V113,T10] ( 4, 32 ) int -> [rbp-0x24C] "field V26.Item2 (fldOffset=0x8)" P-INDEP
-; V114 tmp85 [V114,T29] ( 2, 16 ) ref -> rdx "field V32.Item1 (fldOffset=0x0)" P-INDEP
-;* V115 tmp86 [V115,T58] ( 0, 0 ) int -> zero-ref "field V32.Item2 (fldOffset=0x8)" P-INDEP
-;* V116 tmp87 [V116 ] ( 0, 0 ) ref -> zero-ref "field V34.Item1 (fldOffset=0x0)" P-INDEP
-;* V117 tmp88 [V117 ] ( 0, 0 ) int -> zero-ref "field V34.Item2 (fldOffset=0x8)" P-INDEP
-;* V118 tmp89 [V118 ] ( 0, 0 ) ref -> zero-ref "field V35.Item1 (fldOffset=0x0)" P-INDEP
-;* V119 tmp90 [V119 ] ( 0, 0 ) int -> zero-ref "field V35.Item2 (fldOffset=0x8)" P-INDEP
-;* V120 tmp91 [V120 ] ( 0, 0 ) ref -> zero-ref "field V95.Item1 (fldOffset=0x0)" P-INDEP
-;* V121 tmp92 [V121 ] ( 0, 0 ) int -> zero-ref "field V95.Item2 (fldOffset=0x8)" P-INDEP
-;* V122 tmp93 [V122 ] ( 0, 0 ) ref -> zero-ref "field V100.Item1 (fldOffset=0x0)" P-INDEP
-;* V123 tmp94 [V123 ] ( 0, 0 ) int -> zero-ref "field V100.Item2 (fldOffset=0x8)" P-INDEP
-;* V124 tmp95 [V124,T79] ( 0, 0 ) ref -> zero-ref "V24.[000..008)"
-; V125 tmp96 [V125,T01] ( 6, 84 ) int -> [rbp-0x250] "V24.[008..012)"
-; V126 tmp97 [V126,T11] ( 2, 36 ) int -> [rbp-0x254] spill-single-def "V24.[012..016)"
-; V127 tmp98 [V127,T08] ( 3, 32 ) ref -> [rbp-0x290] spill-single-def "V24.[016..024)"
-; V128 tmp99 [V128,T06] ( 4, 40 ) int -> [rbp-0x258] "V24.[032..036)"
-;* V129 tmp100 [V129 ] ( 0, 0 ) ref -> zero-ref "V25.[000..008)"
-;* V130 tmp101 [V130 ] ( 0, 0 ) int -> zero-ref "V25.[016..020)"
-; V131 tmp102 [V131,T65] ( 2, 6 ) int -> r15 "V28.[000..004)"
-; V132 tmp103 [V132,T64] ( 2, 6 ) ref -> rdi "V28.[008..016)"
-; V133 tmp104 [V133,T55] ( 2, 8 ) int -> rax "V28.[016..020)"
-;* V134 tmp105 [V134 ] ( 0, 0 ) ref -> zero-ref "V37.[000..008)"
-;* V135 tmp106 [V135 ] ( 0, 0 ) ref -> zero-ref "V37.[008..016)"
-;* V136 tmp107 [V136 ] ( 0, 0 ) int -> zero-ref "V37.[016..020)"
-;* V137 tmp108 [V137 ] ( 0, 0 ) ubyte -> zero-ref "V37.[020..021)"
-;* V138 tmp109 [V138 ] ( 0, 0 ) ref -> zero-ref "V39.[000..008)"
-;* V139 tmp110 [V139 ] ( 0, 0 ) ref -> zero-ref "V39.[008..016)"
-;* V140 tmp111 [V140 ] ( 0, 0 ) int -> zero-ref "V39.[016..020)"
-;* V141 tmp112 [V141 ] ( 0, 0 ) ubyte -> zero-ref "V39.[020..021)"
-;* V142 tmp113 [V142 ] ( 0, 0 ) ref -> zero-ref "V41.[000..008)"
-;* V143 tmp114 [V143 ] ( 0, 0 ) ref -> zero-ref "V41.[008..016)"
-;* V144 tmp115 [V144 ] ( 0, 0 ) int -> zero-ref "V41.[016..020)"
-;* V145 tmp116 [V145 ] ( 0, 0 ) ubyte -> zero-ref "V41.[020..021)"
-;* V146 tmp117 [V146 ] ( 0, 0 ) ref -> zero-ref "V42.[000..008)"
-;* V147 tmp118 [V147 ] ( 0, 0 ) ref -> zero-ref "V42.[008..016)"
-;* V148 tmp119 [V148 ] ( 0, 0 ) int -> zero-ref "V42.[016..020)"
-;* V149 tmp120 [V149 ] ( 0, 0 ) ubyte -> zero-ref "V42.[020..021)"
-;* V150 tmp121 [V150 ] ( 0, 0 ) ref -> zero-ref "V44.[000..008)"
-;* V151 tmp122 [V151 ] ( 0, 0 ) ref -> zero-ref "V44.[008..016)"
-;* V152 tmp123 [V152 ] ( 0, 0 ) int -> zero-ref "V44.[016..020)"
-;* V153 tmp124 [V153 ] ( 0, 0 ) ubyte -> zero-ref "V44.[020..021)"
-;* V154 tmp125 [V154 ] ( 0, 0 ) ref -> zero-ref "V47.[000..008)"
-;* V155 tmp126 [V155 ] ( 0, 0 ) ref -> zero-ref "V47.[008..016)"
-;* V156 tmp127 [V156 ] ( 0, 0 ) int -> zero-ref "V47.[016..020)"
-;* V157 tmp128 [V157 ] ( 0, 0 ) ubyte -> zero-ref "V47.[020..021)"
-;* V158 tmp129 [V158 ] ( 0, 0 ) ref -> zero-ref "V89.[000..008)"
-;* V159 tmp130 [V159 ] ( 0, 0 ) int -> zero-ref "V89.[008..012)"
-; V160 tmp131 [V160,T56] ( 2, 8 ) int -> r11 "V89.[012..016)"
-;* V161 tmp132 [V161 ] ( 0, 0 ) ref -> zero-ref "V89.[016..024)"
-;* V162 tmp133 [V162 ] ( 0, 0 ) int -> zero-ref "V89.[032..036)"
-;* V163 tmp134 [V163 ] ( 0, 0 ) ref -> zero-ref single-def "V104.[000..008)"
-; V164 tmp135 [V164,T116] ( 2, 1 ) int -> rdi "V104.[008..012)"
-;* V165 tmp136 [V165 ] ( 0, 0 ) int -> zero-ref "V104.[012..016)"
-;* V166 tmp137 [V166 ] ( 0, 0 ) int -> zero-ref "V104.[016..020)"
-; V167 tmp138 [V167,T00] ( 4,128 ) byref -> rsi "Spilling address for field-by-field copy"
-; V168 tmp139 [V168,T93] ( 3, 3 ) ref -> rcx single-def "arr expr"
-; V169 tmp140 [V169,T94] ( 3, 3 ) ref -> rcx single-def "arr expr"
-; V170 tmp141 [V170,T37] ( 3, 12 ) ref -> rcx "arr expr"
-; V171 tmp142 [V171,T38] ( 3, 12 ) ref -> rdx "arr expr"
-; V172 tmp143 [V172,T03] ( 3, 96 ) ref -> rsi "arr expr"
-; V173 tmp144 [V173,T14] ( 2, 32 ) ref -> rsi "argument with side effect"
-; V174 cse0 [V174,T117] ( 2, 1 ) int -> rax "CSE #01: conservative"
-; V175 cse1 [V175,T118] ( 2, 1 ) int -> rax "CSE #09: conservative"
-; V176 cse2 [V176,T09] ( 2, 32 ) int -> rsi "CSE #26: moderate"
-; V177 cse3 [V177,T05] ( 2, 64 ) int -> rsi "CSE #25: aggressive"
-; V178 cse4 [V178,T88] ( 8, 3.25) ref -> rsi multi-def "CSE #14: conservative"
-; V179 rat0 [V179,T28] ( 7, 18.50) long -> [rbp-0x260] "Widened IV V16"
-; V180 rat1 [V180,T07] ( 7, 54.50) long -> [rbp-0x268] "Widened IV V22"
-; V181 rat2 [V181,T39] ( 6, 11 ) long -> r15 "Widened IV V11"
-; V182 rat3 [V182,T84] ( 5, 3.75) ref -> r15 "replacement local"
-; V183 rat4 [V183,T111] ( 3, 1.25) long -> rdi "CSE for expectedClsNode"
-; V184 rat5 [V184,T85] ( 5, 3.75) ref -> r15 "replacement local"
-; V185 rat6 [V185,T112] ( 3, 1.25) long -> rdi "CSE for expectedClsNode"
-; V186 rat7 [V186,T43] ( 3, 9 ) ref -> rsi "Spilling to split statement for tree"
-; V187 rat8 [V187,T32] ( 5, 15 ) ref -> rcx "replacement local"
-; V188 rat9 [V188,T74] ( 3, 5 ) long -> rdi "CSE for expectedClsNode"
-; V189 rat10 [V189,T44] ( 3, 9 ) ref -> rsi "Spilling to split statement for tree"
-; V190 rat11 [V190,T33] ( 5, 15 ) ref -> rdx "replacement local"
-; V191 rat12 [V191,T75] ( 3, 5 ) long -> rdi "CSE for expectedClsNode"
-; V192 rat13 [V192,T97] ( 3, 2.98) int -> rdi "ReplaceWithLclVar is creating a new local variable"
+; V102 tmp73 [V102,T94] ( 2, 2 ) struct (48) [rbp-0x218] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]>
+; V103 tmp74 [V103,T47] ( 2, 8 ) int -> r15 "Inlining Arg"
+; V104 tmp75 [V104,T55] ( 3, 6 ) ref -> rdi class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet[]>
+; V105 tmp76 [V105,T41] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V106 tmp77 [V106,T17] ( 5, 20 ) struct (32) [rbp-0x238] do-not-enreg[S] must-init "Inlining Arg" <System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet>
+; V107 tmp78 [V107,T62] ( 5, 5 ) int -> r13 "Single return block return value"
+; V108 tmp79 [V108,T63] ( 4, 5 ) ubyte -> [rbp-0x23C] "field V19.hasValue (fldOffset=0x0)" P-INDEP
+; V109 tmp80 [V109,T64] ( 4, 5 ) int -> [rbp-0x240] "field V19.value (fldOffset=0x4)" P-INDEP
+; V110 tmp81 [V110,T06] ( 3, 24 ) ref -> [rbp-0x278] spill-single-def "field V26.Item1 (fldOffset=0x0)" P-INDEP
+; V111 tmp82 [V111,T03] ( 4, 32 ) int -> [rbp-0x244] "field V26.Item2 (fldOffset=0x8)" P-INDEP
+; V112 tmp83 [V112,T20] ( 2, 16 ) ref -> rdx "field V32.Item1 (fldOffset=0x0)" P-INDEP
+;* V113 tmp84 [V113,T50] ( 0, 0 ) int -> zero-ref "field V32.Item2 (fldOffset=0x8)" P-INDEP
+;* V114 tmp85 [V114 ] ( 0, 0 ) ref -> zero-ref "field V34.Item1 (fldOffset=0x0)" P-INDEP
+;* V115 tmp86 [V115 ] ( 0, 0 ) int -> zero-ref "field V34.Item2 (fldOffset=0x8)" P-INDEP
+;* V116 tmp87 [V116 ] ( 0, 0 ) ref -> zero-ref "field V35.Item1 (fldOffset=0x0)" P-INDEP
+;* V117 tmp88 [V117 ] ( 0, 0 ) int -> zero-ref "field V35.Item2 (fldOffset=0x8)" P-INDEP
+;* V118 tmp89 [V118 ] ( 0, 0 ) ref -> zero-ref "field V95.Item1 (fldOffset=0x0)" P-INDEP
+;* V119 tmp90 [V119 ] ( 0, 0 ) int -> zero-ref "field V95.Item2 (fldOffset=0x8)" P-INDEP
+;* V120 tmp91 [V120 ] ( 0, 0 ) ref -> zero-ref "field V100.Item1 (fldOffset=0x0)" P-INDEP
+;* V121 tmp92 [V121 ] ( 0, 0 ) int -> zero-ref "field V100.Item2 (fldOffset=0x8)" P-INDEP
+; V122 tmp93 [V122,T07] ( 3, 32 ) ref -> [rbp-0x280] spill-single-def "V25.[000..008)"
+; V123 tmp94 [V123,T02] ( 4, 48 ) int -> [rbp-0x248] spill-single-def "V25.[016..020)"
+; V124 tmp95 [V124,T57] ( 2, 6 ) int -> r15 "V28.[000..004)"
+; V125 tmp96 [V125,T56] ( 2, 6 ) ref -> rdi "V28.[008..016)"
+; V126 tmp97 [V126,T48] ( 2, 8 ) int -> rax "V28.[016..020)"
+;* V127 tmp98 [V127 ] ( 0, 0 ) ref -> zero-ref "V37.[000..008)"
+;* V128 tmp99 [V128 ] ( 0, 0 ) ref -> zero-ref "V37.[008..016)"
+;* V129 tmp100 [V129 ] ( 0, 0 ) int -> zero-ref "V37.[016..020)"
+;* V130 tmp101 [V130 ] ( 0, 0 ) ubyte -> zero-ref "V37.[020..021)"
+;* V131 tmp102 [V131 ] ( 0, 0 ) ref -> zero-ref "V39.[000..008)"
+;* V132 tmp103 [V132 ] ( 0, 0 ) ref -> zero-ref "V39.[008..016)"
+;* V133 tmp104 [V133 ] ( 0, 0 ) int -> zero-ref "V39.[016..020)"
+;* V134 tmp105 [V134 ] ( 0, 0 ) ubyte -> zero-ref "V39.[020..021)"
+;* V135 tmp106 [V135 ] ( 0, 0 ) ref -> zero-ref "V41.[000..008)"
+;* V136 tmp107 [V136 ] ( 0, 0 ) ref -> zero-ref "V41.[008..016)"
+;* V137 tmp108 [V137 ] ( 0, 0 ) int -> zero-ref "V41.[016..020)"
+;* V138 tmp109 [V138 ] ( 0, 0 ) ubyte -> zero-ref "V41.[020..021)"
+;* V139 tmp110 [V139 ] ( 0, 0 ) ref -> zero-ref "V42.[000..008)"
+;* V140 tmp111 [V140 ] ( 0, 0 ) ref -> zero-ref "V42.[008..016)"
+;* V141 tmp112 [V141 ] ( 0, 0 ) int -> zero-ref "V42.[016..020)"
+;* V142 tmp113 [V142 ] ( 0, 0 ) ubyte -> zero-ref "V42.[020..021)"
+;* V143 tmp114 [V143 ] ( 0, 0 ) ref -> zero-ref "V44.[000..008)"
+;* V144 tmp115 [V144 ] ( 0, 0 ) ref -> zero-ref "V44.[008..016)"
+;* V145 tmp116 [V145 ] ( 0, 0 ) int -> zero-ref "V44.[016..020)"
+;* V146 tmp117 [V146 ] ( 0, 0 ) ubyte -> zero-ref "V44.[020..021)"
+;* V147 tmp118 [V147 ] ( 0, 0 ) ref -> zero-ref "V47.[000..008)"
+;* V148 tmp119 [V148 ] ( 0, 0 ) ref -> zero-ref "V47.[008..016)"
+;* V149 tmp120 [V149 ] ( 0, 0 ) int -> zero-ref "V47.[016..020)"
+;* V150 tmp121 [V150 ] ( 0, 0 ) ubyte -> zero-ref "V47.[020..021)"
+;* V151 tmp122 [V151 ] ( 0, 0 ) ref -> zero-ref "V89.[000..008)"
+;* V152 tmp123 [V152 ] ( 0, 0 ) int -> zero-ref "V89.[008..012)"
+; V153 tmp124 [V153,T49] ( 2, 8 ) int -> rdi "V89.[012..016)"
+;* V154 tmp125 [V154 ] ( 0, 0 ) ref -> zero-ref single-def "V102.[000..008)"
+; V155 tmp126 [V155,T107] ( 2, 1 ) int -> rdi "V102.[008..012)"
+;* V156 tmp127 [V156 ] ( 0, 0 ) int -> zero-ref "V102.[012..016)"
+;* V157 tmp128 [V157 ] ( 0, 0 ) int -> zero-ref "V102.[016..020)"
+; V158 tmp129 [V158,T84] ( 3, 3 ) ref -> rcx single-def "arr expr"
+; V159 tmp130 [V159,T85] ( 3, 3 ) ref -> rcx single-def "arr expr"
+; V160 tmp131 [V160,T29] ( 3, 12 ) ref -> rcx "arr expr"
+; V161 tmp132 [V161,T30] ( 3, 12 ) ref -> rdx "arr expr"
+; V162 tmp133 [V162,T08] ( 2, 32 ) ref -> rsi "argument with side effect"
+; V163 cse0 [V163,T108] ( 2, 1 ) int -> rax "CSE #01: conservative"
+; V164 cse1 [V164,T109] ( 2, 1 ) int -> rax "CSE #09: conservative"
+; V165 cse2 [V165,T79] ( 8, 3.25) ref -> rsi multi-def "CSE #14: conservative"
+; V166 rat0 [V166,T18] ( 7, 18.50) long -> [rbp-0x250] "Widened IV V16"
+; V167 rat1 [V167,T19] ( 7, 18.50) long -> [rbp-0x258] "Widened IV V22"
+; V168 rat2 [V168,T31] ( 6, 11 ) long -> r15 "Widened IV V11"
+; V169 rat3 [V169,T75] ( 5, 3.75) ref -> r15 "replacement local"
+; V170 rat4 [V170,T102] ( 3, 1.25) long -> rdi "CSE for expectedClsNode"
+; V171 rat5 [V171,T76] ( 5, 3.75) ref -> r15 "replacement local"
+; V172 rat6 [V172,T103] ( 3, 1.25) long -> rdi "CSE for expectedClsNode"
+; V173 rat7 [V173,T36] ( 3, 9 ) ref -> rsi "Spilling to split statement for tree"
+; V174 rat8 [V174,T24] ( 5, 15 ) ref -> rcx "replacement local"
+; V175 rat9 [V175,T66] ( 3, 5 ) long -> rdi "CSE for expectedClsNode"
+; V176 rat10 [V176,T37] ( 3, 9 ) ref -> rsi "Spilling to split statement for tree"
+; V177 rat11 [V177,T25] ( 5, 15 ) ref -> rdx "replacement local"
+; V178 rat12 [V178,T67] ( 3, 5 ) long -> rdi "CSE for expectedClsNode"
+; V179 rat13 [V179,T88] ( 3, 2.98) int -> rdi "ReplaceWithLclVar is creating a new local variable"
;
-; Lcl frame size = 648
+; Lcl frame size = 632
G_M17671_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 648
- lea rbp, [rsp+0x2B0]
+ sub rsp, 632
+ lea rbp, [rsp+0x2A0]
+ xor eax, eax
+ mov qword ptr [rbp-0x238], rax
vxorps xmm8, xmm8, xmm8
- vmovdqa xmmword ptr [rbp-0x240], xmm8
vmovdqa xmmword ptr [rbp-0x230], xmm8
mov rax, -480
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-0x40], rax
mov r15, rdi
mov rbx, rsi
mov r14, rdx
mov r13d, ecx
- ;; size=92 bbWeight=1 PerfScore 19.58
+ ;; size=97 bbWeight=1 PerfScore 19.83
G_M17671_IG02:
call System.Runtime.CompilerServices.RuntimeHelpers:TryEnsureSufficientExecutionStack():ubyte
test eax, eax
- je G_M17671_IG93
+ je G_M17671_IG90
;; size=13 bbWeight=1 PerfScore 2.25
G_M17671_IG03:
test byte ptr [r15+0x28], 64
- jne G_M17671_IG93
+ jne G_M17671_IG90
movzx rdi, byte ptr [r15+0x2E]
add edi, -3
cmp edi, 43
- ja G_M17671_IG93
+ ja G_M17671_IG90
;; size=28 bbWeight=0.50 PerfScore 3.75
G_M17671_IG04:
mov edi, edi
lea rax, [reloc @RWD00]
mov eax, dword ptr [rax+4*rdi]
lea rcx, G_M17671_IG02
add rax, rcx
jmp rax
;; size=24 bbWeight=0.49 PerfScore 2.93
G_M17671_IG05:
cmp dword ptr [rbx+0x10], 50
- jge G_M17671_IG93
+ jge G_M17671_IG90
movzx rdi, word ptr [r15+0x2C]
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
call [rax]System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
mov r13d, dword ptr [r14]
lea edi, [r13+0x01]
mov dword ptr [r14], edi
- mov gword ptr [rbp-0x140], rax
- mov dword ptr [rbp-0x130], r13d
+ mov gword ptr [rbp-0x138], rax
+ mov dword ptr [rbp-0x128], r13d
xor edi, edi
- mov qword ptr [rbp-0x128], rdi
+ mov qword ptr [rbp-0x120], rdi
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
mov eax, dword ptr [rdi+0x08]
cmp eax, esi
jbe SHORT G_M17671_IG06
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x140]
+ lea rsi, bword ptr [rbp-0x138]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=118 bbWeight=0.50 PerfScore 17.88
G_M17671_IG06:
lea rdi, [rsp]
- lea rsi, [rbp-0x140]
+ lea rsi, [rbp-0x138]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=66 bbWeight=0.50 PerfScore 7.75
G_M17671_IG07:
cmp dword ptr [r15+0x20], 0
- jle G_M17671_IG93
+ jle G_M17671_IG90
movzx rdi, word ptr [r15+0x2C]
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
call [rax]System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
mov r12, rax
mov r13d, dword ptr [r15+0x20]
mov edi, 20
cmp r13d, 20
cmovg r13d, edi
xor edx, edx
jmp G_M17671_IG12
;; size=55 bbWeight=0.50 PerfScore 7.25
G_M17671_IG08:
mov edi, dword ptr [r14]
lea esi, [rdi+0x01]
mov dword ptr [r14], esi
xor esi, esi
- mov qword ptr [rbp-0x108], rsi
- mov gword ptr [rbp-0x160], r12
- mov dword ptr [rbp-0x150], edi
+ mov qword ptr [rbp-0x100], rsi
+ mov gword ptr [rbp-0x158], r12
+ mov dword ptr [rbp-0x148], edi
;; size=31 bbWeight=2 PerfScore 13.50
G_M17671_IG09:
- mov qword ptr [rbp-0x148], rsi
+ mov qword ptr [rbp-0x140], rsi
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
cmp dword ptr [rdi+0x08], esi
jbe SHORT G_M17671_IG10
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x160]
+ lea rsi, bword ptr [rbp-0x158]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
jmp SHORT G_M17671_IG11
;; size=60 bbWeight=2 PerfScore 43.00
G_M17671_IG10:
lea rdi, [rsp]
- lea rsi, [rbp-0x160]
+ lea rsi, [rbp-0x158]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
;; size=61 bbWeight=2 PerfScore 27.00
G_M17671_IG11:
- mov edx, dword ptr [rbp-0x30]
+ mov edx, dword ptr [rbp-0x2C]
inc edx
;; size=5 bbWeight=2 PerfScore 2.50
G_M17671_IG12:
- mov dword ptr [rbp-0x30], edx
+ mov dword ptr [rbp-0x2C], edx
cmp edx, r13d
jge SHORT G_M17671_IG13
cmp dword ptr [rbx+0x10], 50
jl G_M17671_IG08
;; size=18 bbWeight=4 PerfScore 25.00
G_M17671_IG13:
- mov edx, dword ptr [rbp-0x30]
+ mov edx, dword ptr [rbp-0x2C]
cmp edx, dword ptr [r15+0x20]
- jne G_M17671_IG93
+ jne G_M17671_IG90
cmp edx, dword ptr [r15+0x24]
sete r13b
movzx r13, r13b
- jmp G_M17671_IG98
+ jmp G_M17671_IG95
;; size=30 bbWeight=0.50 PerfScore 5.62
G_M17671_IG14:
mov r13, gword ptr [r15+0x10]
xor r15d, r15d
jmp G_M17671_IG19
;; size=12 bbWeight=0.50 PerfScore 2.12
G_M17671_IG15:
movzx rdi, word ptr [r13+2*r15+0x0C]
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
call [rax]System.Text.RegularExpressions.RegexCharClass:OneToStringClass(ushort):System.String
mov edi, dword ptr [r14]
lea esi, [rdi+0x01]
mov dword ptr [r14], esi
xor esi, esi
- mov qword ptr [rbp-0xC8], rsi
- mov gword ptr [rbp-0x180], rax
- mov dword ptr [rbp-0x170], edi
+ mov qword ptr [rbp-0xC0], rsi
+ mov gword ptr [rbp-0x178], rax
+ mov dword ptr [rbp-0x168], edi
;; size=49 bbWeight=2 PerfScore 24.00
G_M17671_IG16:
- mov qword ptr [rbp-0x168], rsi
+ mov qword ptr [rbp-0x160], rsi
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
cmp dword ptr [rdi+0x08], esi
jbe SHORT G_M17671_IG17
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x180]
+ lea rsi, bword ptr [rbp-0x178]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
jmp SHORT G_M17671_IG18
;; size=60 bbWeight=2 PerfScore 43.00
G_M17671_IG17:
lea rdi, [rsp]
- lea rsi, [rbp-0x180]
+ lea rsi, [rbp-0x178]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
;; size=61 bbWeight=2 PerfScore 27.00
G_M17671_IG18:
inc r15d
;; size=3 bbWeight=2 PerfScore 0.50
G_M17671_IG19:
cmp dword ptr [r13+0x08], r15d
jle SHORT G_M17671_IG20
cmp dword ptr [rbx+0x10], 50
jl G_M17671_IG15
;; size=16 bbWeight=4 PerfScore 32.00
G_M17671_IG20:
mov edi, r15d
cmp dword ptr [r13+0x08], edi
sete r13b
movzx r13, r13b
- jmp G_M17671_IG98
+ jmp G_M17671_IG95
;; size=20 bbWeight=0.50 PerfScore 3.25
G_M17671_IG21:
cmp dword ptr [rbx+0x10], 50
- jge G_M17671_IG93
+ jge G_M17671_IG90
mov rdi, gword ptr [r15+0x10]
mov esi, dword ptr [r14]
lea eax, [rsi+0x01]
mov dword ptr [r14], eax
- mov gword ptr [rbp-0x1A0], rdi
- mov dword ptr [rbp-0x190], esi
+ mov gword ptr [rbp-0x198], rdi
+ mov dword ptr [rbp-0x188], esi
xor edi, edi
- mov qword ptr [rbp-0x188], rdi
+ mov qword ptr [rbp-0x180], rdi
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
mov eax, dword ptr [rdi+0x08]
cmp eax, esi
jbe SHORT G_M17671_IG22
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x1A0]
+ lea rsi, bword ptr [rbp-0x198]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=103 bbWeight=0.50 PerfScore 16.25
G_M17671_IG22:
lea rdi, [rsp]
- lea rsi, [rbp-0x1A0]
+ lea rsi, [rbp-0x198]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=66 bbWeight=0.50 PerfScore 7.75
G_M17671_IG23:
cmp dword ptr [r15+0x20], 0
- jle G_M17671_IG93
+ jle G_M17671_IG90
mov r13d, dword ptr [r15+0x20]
mov edi, 20
cmp r13d, 20
cmovg r13d, edi
xor r12d, r12d
jmp G_M17671_IG28
;; size=36 bbWeight=0.50 PerfScore 4.50
G_M17671_IG24:
mov rdi, gword ptr [r15+0x10]
mov esi, dword ptr [r14]
lea eax, [rsi+0x01]
mov dword ptr [r14], eax
xor eax, eax
- mov qword ptr [rbp-0xE8], rax
- mov gword ptr [rbp-0x1C0], rdi
- mov dword ptr [rbp-0x1B0], esi
+ mov qword ptr [rbp-0xE0], rax
+ mov gword ptr [rbp-0x1B8], rdi
+ mov dword ptr [rbp-0x1A8], esi
;; size=35 bbWeight=2 PerfScore 17.50
G_M17671_IG25:
- mov qword ptr [rbp-0x1A8], rax
+ mov qword ptr [rbp-0x1A0], rax
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
cmp dword ptr [rdi+0x08], esi
jbe SHORT G_M17671_IG26
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x1C0]
+ lea rsi, bword ptr [rbp-0x1B8]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
jmp SHORT G_M17671_IG27
;; size=60 bbWeight=2 PerfScore 43.00
G_M17671_IG26:
lea rdi, [rsp]
- lea rsi, [rbp-0x1C0]
+ lea rsi, [rbp-0x1B8]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
;; size=61 bbWeight=2 PerfScore 27.00
G_M17671_IG27:
inc r12d
;; size=3 bbWeight=2 PerfScore 0.50
G_M17671_IG28:
cmp r12d, r13d
jge SHORT G_M17671_IG29
cmp dword ptr [rbx+0x10], 50
jl G_M17671_IG24
;; size=15 bbWeight=4 PerfScore 21.00
G_M17671_IG29:
cmp r12d, dword ptr [r15+0x20]
- jne G_M17671_IG93
+ jne G_M17671_IG90
cmp r12d, dword ptr [r15+0x24]
sete r13b
movzx r13, r13b
- jmp G_M17671_IG98
+ jmp G_M17671_IG95
;; size=27 bbWeight=0.50 PerfScore 5.12
G_M17671_IG30:
inc dword ptr [r14]
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=8 bbWeight=0.50 PerfScore 2.50
G_M17671_IG31:
mov esi, dword ptr [r15+0x20]
cmp esi, dword ptr [r15+0x24]
- jne G_M17671_IG93
+ jne G_M17671_IG90
mov esi, dword ptr [r15+0x20]
add dword ptr [r14], esi
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=26 bbWeight=0.50 PerfScore 6.50
G_M17671_IG32:
mov rsi, gword ptr [r15+0x08]
mov rdi, rsi
test rdi, rdi
je SHORT G_M17671_IG35
;; size=12 bbWeight=0.50 PerfScore 1.75
G_M17671_IG33:
mov rax, 0xD1FFAB1E ; System.Text.RegularExpressions.RegexNode
cmp qword ptr [rdi], rax
jne SHORT G_M17671_IG35
;; size=15 bbWeight=0.25 PerfScore 1.06
G_M17671_IG34:
jmp SHORT G_M17671_IG39
;; size=2 bbWeight=0.50 PerfScore 1.00
G_M17671_IG35:
mov r15, rsi
test r15, r15
je SHORT G_M17671_IG38
;; size=8 bbWeight=0.50 PerfScore 0.75
G_M17671_IG36:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
cmp qword ptr [r15], rdi
je SHORT G_M17671_IG38
;; size=15 bbWeight=0.25 PerfScore 1.06
G_M17671_IG37:
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
call [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
mov r15, rax
;; size=15 bbWeight=0.12 PerfScore 0.44
G_M17671_IG38:
cmp dword ptr [r15+0x10], 0
- je G_M17671_IG101
+ je G_M17671_IG98
mov rcx, gword ptr [r15+0x08]
cmp dword ptr [rcx+0x08], 0
- jbe G_M17671_IG100
+ jbe G_M17671_IG97
mov rdi, gword ptr [rcx+0x10]
;; size=29 bbWeight=0.50 PerfScore 6.00
G_M17671_IG39:
movzx rcx, r13b
mov rsi, rbx
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
call [rax]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
mov r13d, eax
- jmp G_M17671_IG98
+ jmp G_M17671_IG95
;; size=30 bbWeight=0.50 PerfScore 3.12
G_M17671_IG40:
cmp dword ptr [r15+0x20], 0
- jle G_M17671_IG93
+ jle G_M17671_IG90
mov rsi, gword ptr [r15+0x08]
mov rdi, rsi
test rdi, rdi
je SHORT G_M17671_IG43
;; size=23 bbWeight=0.50 PerfScore 3.75
G_M17671_IG41:
mov rax, 0xD1FFAB1E ; System.Text.RegularExpressions.RegexNode
cmp qword ptr [rdi], rax
jne SHORT G_M17671_IG43
;; size=15 bbWeight=0.25 PerfScore 1.06
G_M17671_IG42:
jmp SHORT G_M17671_IG47
;; size=2 bbWeight=0.50 PerfScore 1.00
G_M17671_IG43:
mov r15, rsi
test r15, r15
je SHORT G_M17671_IG46
;; size=8 bbWeight=0.50 PerfScore 0.75
G_M17671_IG44:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
cmp qword ptr [r15], rdi
je SHORT G_M17671_IG46
;; size=15 bbWeight=0.25 PerfScore 1.06
G_M17671_IG45:
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
call [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
mov r15, rax
;; size=15 bbWeight=0.12 PerfScore 0.44
G_M17671_IG46:
cmp dword ptr [r15+0x10], 0
- je G_M17671_IG101
+ je G_M17671_IG98
mov rcx, gword ptr [r15+0x08]
cmp dword ptr [rcx+0x08], 0
- jbe G_M17671_IG100
+ jbe G_M17671_IG97
mov rdi, gword ptr [rcx+0x10]
;; size=29 bbWeight=0.50 PerfScore 6.00
G_M17671_IG47:
movzx rcx, r13b
mov rsi, rbx
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
call [rax]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
- jmp G_M17671_IG93
+ jmp G_M17671_IG90
;; size=27 bbWeight=0.50 PerfScore 3.00
G_M17671_IG48:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexNode:ChildCount():int:this
call [rax]System.Text.RegularExpressions.RegexNode:ChildCount():int:this
mov r12d, eax
xor eax, eax
- mov qword ptr [rbp-0x260], rax
+ mov qword ptr [rbp-0x250], rax
test r12d, r12d
- jle G_M17671_IG96
+ jle G_M17671_IG93
;; size=36 bbWeight=0.50 PerfScore 3.12
G_M17671_IG49:
mov rdi, gword ptr [r15+0x08]
test rdi, rdi
je SHORT G_M17671_IG52
;; size=9 bbWeight=4 PerfScore 13.00
G_M17671_IG50:
mov rsi, 0xD1FFAB1E ; System.Text.RegularExpressions.RegexNode
cmp qword ptr [rdi], rsi
jne SHORT G_M17671_IG52
;; size=15 bbWeight=1 PerfScore 4.25
G_M17671_IG51:
jmp SHORT G_M17671_IG56
;; size=2 bbWeight=2 PerfScore 4.00
G_M17671_IG52:
mov rsi, gword ptr [r15+0x08]
mov rcx, rsi
test rcx, rcx
je SHORT G_M17671_IG55
;; size=12 bbWeight=2 PerfScore 7.00
G_M17671_IG53:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
cmp qword ptr [rcx], rdi
je SHORT G_M17671_IG55
;; size=15 bbWeight=1 PerfScore 4.25
G_M17671_IG54:
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
call [rcx]CORINFO_HELP_CHKCASTCLASS_SPECIAL
mov rcx, rax
;; size=15 bbWeight=0.50 PerfScore 1.75
G_M17671_IG55:
- mov rax, qword ptr [rbp-0x260]
+ mov rax, qword ptr [rbp-0x250]
cmp eax, dword ptr [rcx+0x10]
- jae G_M17671_IG101
+ jae G_M17671_IG98
mov rcx, gword ptr [rcx+0x08]
cmp eax, dword ptr [rcx+0x08]
- jae G_M17671_IG100
- mov qword ptr [rbp-0x260], rax
+ jae G_M17671_IG97
+ mov qword ptr [rbp-0x250], rax
mov rdi, gword ptr [rcx+8*rax+0x10]
;; size=41 bbWeight=2 PerfScore 28.00
G_M17671_IG56:
movzx rcx, r13b
mov rsi, rbx
mov rdx, r14
mov r8, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
call [r8]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
test eax, eax
- je G_M17671_IG93
- mov rdi, qword ptr [rbp-0x260]
+ je G_M17671_IG90
+ mov rdi, qword ptr [rbp-0x250]
inc edi
cmp edi, r12d
- mov qword ptr [rbp-0x260], rdi
+ mov qword ptr [rbp-0x250], rdi
jl G_M17671_IG49
- jmp G_M17671_IG96
+ jmp G_M17671_IG93
;; size=61 bbWeight=4 PerfScore 43.00
G_M17671_IG57:
test r13b, r13b
- je G_M17671_IG93
+ je G_M17671_IG90
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexNode:ChildCount():int:this
call [rax]System.Text.RegularExpressions.RegexNode:ChildCount():int:this
mov r12d, eax
- mov dword ptr [rbp-0x34], 1
- mov byte ptr [rbp-0x244], 0
+ mov dword ptr [rbp-0x30], 1
+ mov byte ptr [rbp-0x23C], 0
xor edx, edx
- mov dword ptr [rbp-0x248], edx
+ mov dword ptr [rbp-0x240], edx
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x280], rax
+ mov gword ptr [rbp-0x270], rax
mov rdi, rax
xor esi, esi
xor rdx, rdx
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[int]):this
call [rcx]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[int]):this
- mov rax, gword ptr [rbp-0x280]
- mov gword ptr [rbp-0x270], rax
+ mov rax, gword ptr [rbp-0x270]
+ mov gword ptr [rbp-0x260], rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]
call CORINFO_HELP_NEWSFAST
mov rdi, 0xD1FFAB1E ; 'FixedDistanceSet[]'
mov gword ptr [rax+0x08], rdi
xor ecx, ecx
- mov qword ptr [rbp-0x268], rcx
+ mov qword ptr [rbp-0x258], rcx
test r12d, r12d
- jle SHORT G_M17671_IG63
- ;; size=147 bbWeight=0.50 PerfScore 10.75
+ jle G_M17671_IG79
+ ;; size=151 bbWeight=0.50 PerfScore 10.75
G_M17671_IG58:
inc dword ptr [rax+0x14]
mov edx, dword ptr [rax+0x10]
xor edi, edi
mov dword ptr [rax+0x10], edi
test edx, edx
jle SHORT G_M17671_IG60
;; size=15 bbWeight=4 PerfScore 30.00
G_M17671_IG59:
- mov gword ptr [rbp-0x278], rax
+ mov gword ptr [rbp-0x268], rax
mov rdi, gword ptr [rax+0x08]
xor esi, esi
mov r8, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [r8]System.Array:Clear(System.Array,int,int)
- mov rax, gword ptr [rbp-0x278]
+ mov rax, gword ptr [rbp-0x268]
;; size=33 bbWeight=2 PerfScore 15.00
G_M17671_IG60:
xor esi, esi
- mov dword ptr [rbp-0x40], esi
+ mov dword ptr [rbp-0x38], esi
mov rdi, gword ptr [r15+0x08]
test rdi, rdi
- je SHORT G_M17671_IG64
+ je SHORT G_M17671_IG63
;; size=14 bbWeight=4 PerfScore 18.00
G_M17671_IG61:
mov rsi, 0xD1FFAB1E ; System.Text.RegularExpressions.RegexNode
cmp qword ptr [rdi], rsi
- jne SHORT G_M17671_IG64
+ jne SHORT G_M17671_IG63
;; size=15 bbWeight=1 PerfScore 4.25
G_M17671_IG62:
- jmp G_M17671_IG68
- ;; size=5 bbWeight=2 PerfScore 4.00
+ jmp SHORT G_M17671_IG67
+ ;; size=2 bbWeight=2 PerfScore 4.00
G_M17671_IG63:
- mov eax, dword ptr [rbp-0x34]
- mov r8, gword ptr [rbp-0x270]
- movzx r9, byte ptr [rbp-0x244]
- mov r10d, dword ptr [rbp-0x248]
- jmp G_M17671_IG81
- ;; size=30 bbWeight=0.25 PerfScore 1.50
-G_M17671_IG64:
mov rsi, gword ptr [r15+0x08]
mov rdx, rsi
test rdx, rdx
- je SHORT G_M17671_IG67
+ je SHORT G_M17671_IG66
;; size=12 bbWeight=2 PerfScore 7.00
-G_M17671_IG65:
+G_M17671_IG64:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
cmp qword ptr [rdx], rdi
- je SHORT G_M17671_IG67
+ je SHORT G_M17671_IG66
;; size=15 bbWeight=1 PerfScore 4.25
-G_M17671_IG66:
- mov gword ptr [rbp-0x278], rax
+G_M17671_IG65:
+ mov gword ptr [rbp-0x268], rax
mov rdx, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
call [rdx]CORINFO_HELP_CHKCASTCLASS_SPECIAL
mov rdx, rax
- mov rax, gword ptr [rbp-0x278]
+ mov rax, gword ptr [rbp-0x268]
;; size=29 bbWeight=0.50 PerfScore 2.75
-G_M17671_IG67:
- mov rcx, qword ptr [rbp-0x268]
+G_M17671_IG66:
+ mov rcx, qword ptr [rbp-0x258]
cmp ecx, dword ptr [rdx+0x10]
- jae G_M17671_IG101
+ jae G_M17671_IG98
mov rdx, gword ptr [rdx+0x08]
cmp ecx, dword ptr [rdx+0x08]
- jae G_M17671_IG100
- mov qword ptr [rbp-0x268], rcx
+ jae G_M17671_IG97
+ mov qword ptr [rbp-0x258], rcx
mov rdi, gword ptr [rdx+8*rcx+0x10]
;; size=41 bbWeight=2 PerfScore 28.00
-G_M17671_IG68:
- mov dword ptr [rbp-0x2C], r13d
+G_M17671_IG67:
movzx rcx, r13b
- lea rdx, [rbp-0x40]
- mov gword ptr [rbp-0x278], rax
+ lea rdx, [rbp-0x38]
+ mov gword ptr [rbp-0x268], rax
mov rsi, rax
mov r8, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
call [r8]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte
- and eax, dword ptr [rbp-0x34]
+ and eax, dword ptr [rbp-0x30]
movzx rax, al
- mov rcx, gword ptr [rbp-0x278]
+ mov rcx, gword ptr [rbp-0x268]
cmp dword ptr [rcx+0x10], 0
- je G_M17671_IG93
- mov r8, gword ptr [rbp-0x270]
- movzx r9, byte ptr [rbp-0x244]
- mov r10d, dword ptr [rbp-0x248]
- movzx r13, byte ptr [rbp-0x2C]
+ je G_M17671_IG90
+ movzx r8, byte ptr [rbp-0x23C]
+ mov r9d, dword ptr [rbp-0x240]
test eax, eax
- je SHORT G_M17671_IG71
- ;; size=89 bbWeight=4 PerfScore 75.00
-G_M17671_IG69:
- test r9b, r9b
- jne SHORT G_M17671_IG70
- mov r10d, dword ptr [rbp-0x40]
- mov byte ptr [rbp-0x244], 1
- movzx r9, byte ptr [rbp-0x244]
- jmp SHORT G_M17671_IG71
+ je SHORT G_M17671_IG70
+ ;; size=73 bbWeight=4 PerfScore 63.00
+G_M17671_IG68:
+ test r8b, r8b
+ jne SHORT G_M17671_IG69
+ mov r9d, dword ptr [rbp-0x38]
+ mov byte ptr [rbp-0x23C], 1
+ movzx r8, byte ptr [rbp-0x23C]
+ jmp SHORT G_M17671_IG70
;; size=26 bbWeight=2 PerfScore 12.50
-G_M17671_IG70:
- mov dword ptr [rbp-0x248], r10d
- cmp r10d, dword ptr [rbp-0x40]
- je SHORT G_M17671_IG72
+G_M17671_IG69:
+ mov dword ptr [rbp-0x240], r9d
+ cmp r9d, dword ptr [rbp-0x38]
+ je G_M17671_IG75
xor eax, eax
- mov dword ptr [rbp-0x34], eax
- mov eax, dword ptr [rbp-0x34]
- mov r10d, dword ptr [rbp-0x248]
- ;; size=28 bbWeight=2 PerfScore 14.50
-G_M17671_IG71:
- mov r11d, dword ptr [rcx+0x14]
+ mov dword ptr [rbp-0x30], eax
+ mov eax, dword ptr [rbp-0x30]
+ mov r9d, dword ptr [rbp-0x240]
+ ;; size=32 bbWeight=2 PerfScore 14.50
+G_M17671_IG70:
+ mov edi, dword ptr [rcx+0x14]
vxorps ymm0, ymm0, ymm0
- vmovdqu ymmword ptr [rbp-0x1E0], ymm0
- xor edi, edi
- mov dword ptr [rbp-0x254], r11d
- jmp G_M17671_IG76
- ;; size=30 bbWeight=4 PerfScore 26.33
+ vmovdqu ymmword ptr [rbp-0x1D8], ymm0
+ ;; size=15 bbWeight=4 PerfScore 13.33
+G_M17671_IG71:
+ vmovdqu ymm0, ymmword ptr [rbp-0x1E8]
+ vmovdqu ymmword ptr [rbp-0x68], ymm0
+ vmovdqu xmm0, xmmword ptr [rbp-0x1C8]
+ vmovdqu xmmword ptr [rbp-0x48], xmm0
+ ;; size=26 bbWeight=4 PerfScore 36.00
G_M17671_IG72:
- mov r10d, dword ptr [rbp-0x248]
- jmp SHORT G_M17671_IG71
- ;; size=9 bbWeight=1 PerfScore 3.00
+ mov gword ptr [rbp-0x268], rcx
+ mov gword ptr [rbp-0x68], rcx
+ xor r10d, r10d
+ mov dword ptr [rbp-0x60], r10d
+ mov dword ptr [rbp-0x5C], edi
+ mov dword ptr [rbp-0x30], eax
+ mov dword ptr [rbp-0x23C], r8d
+ mov dword ptr [rbp-0x240], r9d
+ lea rdi, [rbp-0x68]
+ mov r10, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:MoveNext():ubyte:this
+ call [r10]System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:MoveNext():ubyte:this
+ test eax, eax
+ je G_M17671_IG78
+ ;; size=63 bbWeight=4 PerfScore 49.00
G_M17671_IG73:
- mov dword ptr [rbp-0x34], eax
- mov dword ptr [rbp-0x2C], r13d
- mov gword ptr [rbp-0x270], r8
- mov rdi, r8
- mov dword ptr [rbp-0x258], r10d
- mov esi, r10d
- mov r13, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:FindValue(int):byref:this
- call [r13]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:FindValue(int):byref:this
+ mov rax, gword ptr [rbp-0x58]
+ mov gword ptr [rbp-0x280], rax
+ mov ecx, dword ptr [rbp-0x48]
+ mov dword ptr [rbp-0x248], ecx
+ mov rdi, gword ptr [rbp-0x260]
+ mov esi, ecx
+ mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:FindValue(int):byref:this
+ call [rdx]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:FindValue(int):byref:this
test rax, rax
- je G_M17671_IG75
- mov r13, gword ptr [rax]
+ je G_M17671_IG76
+ ;; size=50 bbWeight=16 PerfScore 156.00
+G_M17671_IG74:
+ mov rcx, gword ptr [rax]
+ mov gword ptr [rbp-0x278], rcx
mov eax, dword ptr [rax+0x08]
- mov dword ptr [rbp-0x24C], eax
- mov rdi, gword ptr [rbp-0x290]
+ mov dword ptr [rbp-0x244], eax
+ mov rdi, gword ptr [rbp-0x280]
xor esi, esi
- mov rcx, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
- call [rcx]System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
+ mov rdx, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
+ call [rdx]System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
mov rsi, rax
- mov rdi, r13
+ mov rdi, gword ptr [rbp-0x278]
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:TryAddCharClass(System.Text.RegularExpressions.RegexCharClass):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Text.RegularExpressions.RegexCharClass:TryAddCharClass(System.Text.RegularExpressions.RegexCharClass):ubyte:this
test eax, eax
- mov gword ptr [rbp-0x288], r13
- mov r8, gword ptr [rbp-0x270]
- movzx r13, byte ptr [rbp-0x2C]
- je SHORT G_M17671_IG74
- mov esi, dword ptr [rbp-0x258]
- mov r9d, dword ptr [rbp-0x24C]
- inc r9d
- mov rdx, gword ptr [rbp-0x288]
- mov ecx, r9d
- mov gword ptr [rbp-0x270], r8
- mov rdi, r8
+ je SHORT G_M17671_IG77
+ mov eax, dword ptr [rbp-0x244]
+ inc eax
+ mov rdx, gword ptr [rbp-0x278]
+ mov ecx, eax
+ mov rdi, gword ptr [rbp-0x260]
+ mov esi, dword ptr [rbp-0x248]
mov r8d, 1
- mov r9, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
- call [r9]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
- mov eax, dword ptr [rbp-0x34]
- mov rcx, gword ptr [rbp-0x278]
- mov edi, dword ptr [rbp-0x250]
- mov r8, gword ptr [rbp-0x270]
- movzx r9, byte ptr [rbp-0x244]
- mov r10d, dword ptr [rbp-0x248]
- mov r11d, dword ptr [rbp-0x254]
- jmp G_M17671_IG76
- ;; size=231 bbWeight=8 PerfScore 374.00
-G_M17671_IG74:
- mov eax, dword ptr [rbp-0x34]
- mov rcx, gword ptr [rbp-0x278]
- mov edi, dword ptr [rbp-0x250]
- movzx r9, byte ptr [rbp-0x244]
- mov r10d, dword ptr [rbp-0x248]
- mov r11d, dword ptr [rbp-0x254]
- jmp SHORT G_M17671_IG76
- ;; size=40 bbWeight=4 PerfScore 32.00
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
+ call [rax]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
+ jmp SHORT G_M17671_IG77
+ ;; size=118 bbWeight=8 PerfScore 234.00
G_M17671_IG75:
- mov rdi, gword ptr [rbp-0x290]
+ mov r9d, dword ptr [rbp-0x240]
+ jmp G_M17671_IG70
+ ;; size=12 bbWeight=1 PerfScore 3.00
+G_M17671_IG76:
+ mov rdi, gword ptr [rbp-0x280]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
call [rax]System.Text.RegularExpressions.RegexCharClass:ParseRecursive(System.String,int):System.Text.RegularExpressions.RegexCharClass
mov rdx, rax
mov ecx, 1
- mov rdi, gword ptr [rbp-0x270]
- mov esi, dword ptr [rbp-0x258]
+ mov rdi, gword ptr [rbp-0x260]
+ mov esi, dword ptr [rbp-0x248]
mov r8d, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[int,System.ValueTuple`2[System.__Canon,int]]:TryInsert(int,System.ValueTuple`2[System.__Canon,int],ubyte):ubyte:this
- mov eax, dword ptr [rbp-0x34]
- mov rcx, gword ptr [rbp-0x278]
- mov edi, dword ptr [rbp-0x250]
- mov r8, gword ptr [rbp-0x270]
- movzx r9, byte ptr [rbp-0x244]
- mov r10d, dword ptr [rbp-0x248]
- mov r11d, dword ptr [rbp-0x254]
- movzx r13, byte ptr [rbp-0x2C]
- ;; size=110 bbWeight=8 PerfScore 148.00
-G_M17671_IG76:
- mov esi, dword ptr [rcx+0x14]
- cmp r11d, esi
- jne G_M17671_IG102
- ;; size=12 bbWeight=32 PerfScore 104.00
+ ;; size=60 bbWeight=8 PerfScore 84.00
G_M17671_IG77:
- mov esi, dword ptr [rcx+0x10]
- cmp edi, esi
- jae SHORT G_M17671_IG80
- mov dword ptr [rbp-0x244], r9d
- mov dword ptr [rbp-0x248], r10d
- mov gword ptr [rbp-0x278], rcx
- mov rsi, gword ptr [rcx+0x08]
- cmp edi, dword ptr [rsi+0x08]
- jae G_M17671_IG100
- mov r9d, edi
- shl r9, 5
- lea rsi, bword ptr [rsi+r9+0x10]
- mov r9, gword ptr [rsi]
- mov gword ptr [rbp-0x290], r9
- mov r10d, dword ptr [rsi+0x10]
- ;; size=67 bbWeight=16 PerfScore 304.00
+ lea rdi, [rbp-0x68]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M17671_IG73
+ ;; size=24 bbWeight=16 PerfScore 80.00
G_M17671_IG78:
- vmovdqu ymm0, ymmword ptr [rsi]
- vmovdqu ymmword ptr [rbp-0x60], ymm0
- ;; size=9 bbWeight=16 PerfScore 96.00
-G_M17671_IG79:
+ mov rdi, qword ptr [rbp-0x258]
inc edi
- mov dword ptr [rbp-0x250], edi
- jmp G_M17671_IG73
- ;; size=13 bbWeight=16 PerfScore 52.00
-G_M17671_IG80:
- vxorps ymm0, ymm0, ymm0
- vmovdqu ymmword ptr [rbp-0x60], ymm0
- mov rdx, qword ptr [rbp-0x268]
- inc edx
- mov rdi, rdx
cmp edi, r12d
- mov qword ptr [rbp-0x268], rdi
- jl G_M17671_IG88
- ;; size=37 bbWeight=16 PerfScore 81.33
-G_M17671_IG81:
- mov edi, dword ptr [r8+0x44]
+ mov qword ptr [rbp-0x258], rdi
+ mov rax, gword ptr [rbp-0x268]
+ jl G_M17671_IG58
+ ;; size=32 bbWeight=4 PerfScore 18.00
+G_M17671_IG79:
+ mov r15, gword ptr [rbp-0x260]
+ mov edi, dword ptr [r15+0x44]
vxorps xmm0, xmm0, xmm0
- vmovdqu xmmword ptr [rbp-0x208], xmm0
vmovdqu xmmword ptr [rbp-0x200], xmm0
- ;; size=24 bbWeight=0.50 PerfScore 2.17
-G_M17671_IG82:
- vmovdqu ymm0, ymmword ptr [rbp-0x220]
- vmovdqu ymmword ptr [rbp-0xA0], ymm0
- vmovdqu xmm0, xmmword ptr [rbp-0x200]
- vmovdqu xmmword ptr [rbp-0x80], xmm0
+ vmovdqu xmmword ptr [rbp-0x1F8], xmm0
+ ;; size=31 bbWeight=0.50 PerfScore 2.67
+G_M17671_IG80:
+ vmovdqu ymm0, ymmword ptr [rbp-0x218]
+ vmovdqu ymmword ptr [rbp-0x98], ymm0
+ vmovdqu xmm0, xmmword ptr [rbp-0x1F8]
+ vmovdqu xmmword ptr [rbp-0x78], xmm0
;; size=29 bbWeight=0.50 PerfScore 4.50
-G_M17671_IG83:
- mov gword ptr [rbp-0xA0], r8
- mov dword ptr [rbp-0x98], edi
+G_M17671_IG81:
+ mov gword ptr [rbp-0x98], r15
+ mov dword ptr [rbp-0x90], edi
xor edi, edi
- mov dword ptr [rbp-0x94], edi
- mov dword ptr [rbp-0x90], 2
- mov dword ptr [rbp-0x34], eax
- mov dword ptr [rbp-0x244], r9d
- mov dword ptr [rbp-0x248], r10d
- lea rdi, [rbp-0xA0]
+ mov dword ptr [rbp-0x8C], edi
+ mov dword ptr [rbp-0x88], 2
+ lea rdi, [rbp-0x98]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]
- mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
- call [rcx]System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
test eax, eax
- je G_M17671_IG87
- ;; size=85 bbWeight=0.50 PerfScore 6.25
-G_M17671_IG84:
- mov r15d, dword ptr [rbp-0x88]
- mov rdi, gword ptr [rbp-0x80]
- mov eax, dword ptr [rbp-0x78]
+ je G_M17671_IG85
+ ;; size=68 bbWeight=0.50 PerfScore 4.75
+G_M17671_IG82:
+ mov r15d, dword ptr [rbp-0x80]
+ mov rdi, gword ptr [rbp-0x78]
+ mov eax, dword ptr [rbp-0x70]
cmp dword ptr [rbx+0x10], 50
- jge G_M17671_IG93
- mov r13d, dword ptr [rbp-0x34]
+ jge G_M17671_IG90
+ mov r13d, dword ptr [rbp-0x30]
cmp eax, r12d
- jne G_M17671_IG90
- ;; size=37 bbWeight=4 PerfScore 37.00
-G_M17671_IG85:
+ jne G_M17671_IG87
+ ;; size=34 bbWeight=4 PerfScore 37.00
+G_M17671_IG83:
mov rax, 0xD1FFAB1E ; code for System.Text.RegularExpressions.RegexCharClass:ToStringClass():System.String:this
cmp dword ptr [rdi], edi
call [rax]System.Text.RegularExpressions.RegexCharClass:ToStringClass():System.String:this
add r15d, dword ptr [r14]
xor edi, edi
- mov qword ptr [rbp-0xA8], rdi
- mov gword ptr [rbp-0x240], rax
- mov dword ptr [rbp-0x230], r15d
+ mov qword ptr [rbp-0xA0], rdi
+ mov gword ptr [rbp-0x238], rax
+ mov dword ptr [rbp-0x228], r15d
;; size=40 bbWeight=2 PerfScore 25.00
-G_M17671_IG86:
- mov qword ptr [rbp-0x228], rdi
+G_M17671_IG84:
+ mov qword ptr [rbp-0x220], rdi
inc dword ptr [rbx+0x14]
mov rdi, gword ptr [rbx+0x08]
mov esi, dword ptr [rbx+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M17671_IG89
+ jbe SHORT G_M17671_IG86
lea eax, [rsi+0x01]
mov dword ptr [rbx+0x10], eax
shl rsi, 5
lea rdi, bword ptr [rdi+rsi+0x10]
- lea rsi, bword ptr [rbp-0x240]
+ lea rsi, bword ptr [rbp-0x238]
call CORINFO_HELP_ASSIGN_BYREF
call CORINFO_HELP_ASSIGN_BYREF
movsq
movsq
- jmp SHORT G_M17671_IG90
+ jmp SHORT G_M17671_IG87
;; size=60 bbWeight=2 PerfScore 43.00
-G_M17671_IG87:
- mov r13d, dword ptr [rbp-0x34]
- jmp G_M17671_IG91
- ;; size=9 bbWeight=0.25 PerfScore 0.75
-G_M17671_IG88:
- mov gword ptr [rbp-0x270], r8
- mov dword ptr [rbp-0x34], eax
- mov dword ptr [rbp-0x244], r9d
- mov dword ptr [rbp-0x248], r10d
- mov rax, rcx
- jmp G_M17671_IG58
- ;; size=32 bbWeight=8 PerfScore 50.00
-G_M17671_IG89:
+G_M17671_IG85:
+ mov r13d, dword ptr [rbp-0x30]
+ jmp SHORT G_M17671_IG88
+ ;; size=6 bbWeight=0.25 PerfScore 0.75
+G_M17671_IG86:
lea rdi, [rsp]
- lea rsi, [rbp-0x240]
+ lea rsi, [rbp-0x238]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
call [rax]System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]:AddWithResize(System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet):this
;; size=61 bbWeight=2 PerfScore 27.00
-G_M17671_IG90:
- lea rdi, [rbp-0xA0]
+G_M17671_IG87:
+ lea rdi, [rbp-0x98]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.Text.RegularExpressions.RegexCharClass,int]]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.Dictionary`2+Enumerator[int,System.ValueTuple`2[System.__Canon,int]]:MoveNext():ubyte:this
test eax, eax
- jne SHORT G_M17671_IG92
+ jne SHORT G_M17671_IG89
;; size=33 bbWeight=4 PerfScore 21.00
-G_M17671_IG91:
+G_M17671_IG88:
test r13d, r13d
- je SHORT G_M17671_IG93
- jmp SHORT G_M17671_IG95
+ je SHORT G_M17671_IG90
+ jmp SHORT G_M17671_IG92
;; size=7 bbWeight=0.50 PerfScore 1.62
-G_M17671_IG92:
- mov dword ptr [rbp-0x34], r13d
- jmp G_M17671_IG84
+G_M17671_IG89:
+ mov dword ptr [rbp-0x30], r13d
+ jmp G_M17671_IG82
;; size=9 bbWeight=2 PerfScore 6.00
-G_M17671_IG93:
+G_M17671_IG90:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M17671_IG94:
+G_M17671_IG91:
vzeroupper
- add rsp, 648
+ add rsp, 632
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
-G_M17671_IG95:
- movzx rbx, byte ptr [rbp-0x244]
- mov r15d, dword ptr [rbp-0x248]
+G_M17671_IG92:
+ movzx rbx, byte ptr [rbp-0x23C]
+ mov r15d, dword ptr [rbp-0x240]
mov eax, dword ptr [r14]
test bl, bl
- je SHORT G_M17671_IG103
+ je SHORT G_M17671_IG99
add eax, r15d
mov dword ptr [r14], eax
;; size=27 bbWeight=0.50 PerfScore 3.25
-G_M17671_IG96:
+G_M17671_IG93:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
-G_M17671_IG97:
+G_M17671_IG94:
vzeroupper
- add rsp, 648
+ add rsp, 632
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
-G_M17671_IG98:
+G_M17671_IG95:
movzx rax, r13b
;; size=4 bbWeight=0.50 PerfScore 0.12
-G_M17671_IG99:
+G_M17671_IG96:
vzeroupper
- add rsp, 648
+ add rsp, 632
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=0.50 PerfScore 2.62
-G_M17671_IG100:
+G_M17671_IG97:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-G_M17671_IG101:
+G_M17671_IG98:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M17671_IG102:
- 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_M17671_IG103:
+G_M17671_IG99:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_NoValue()
call [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_NoValue()
int3
;; size=13 bbWeight=0 PerfScore 0.00
RWD00 dd G_M17671_IG07 - G_M17671_IG02
dd G_M17671_IG31 - G_M17671_IG02
dd G_M17671_IG23 - G_M17671_IG02
dd G_M17671_IG07 - G_M17671_IG02
dd G_M17671_IG31 - G_M17671_IG02
dd G_M17671_IG23 - G_M17671_IG02
dd G_M17671_IG05 - G_M17671_IG02
dd G_M17671_IG30 - G_M17671_IG02
dd G_M17671_IG21 - G_M17671_IG02
dd G_M17671_IG14 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
dd G_M17671_IG57 - G_M17671_IG02
dd G_M17671_IG48 - G_M17671_IG02
dd G_M17671_IG40 - G_M17671_IG02
dd G_M17671_IG40 - G_M17671_IG02
dd G_M17671_IG32 - G_M17671_IG02
dd G_M17671_IG32 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG32 - G_M17671_IG02
- dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG93 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
+ dd G_M17671_IG32 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
+ dd G_M17671_IG90 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
dd G_M17671_IG93 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
dd G_M17671_IG07 - G_M17671_IG02
dd G_M17671_IG31 - G_M17671_IG02
dd G_M17671_IG23 - G_M17671_IG02
- dd G_M17671_IG96 - G_M17671_IG02
+ dd G_M17671_IG93 - G_M17671_IG02
-; Total bytes of code 3357, prolog size 92, PerfScore 2286.10, instruction count 768, allocated bytes for code 3357 (MethodHash=40febaf8) for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte (FullOpts)
+; Total bytes of code 3102, prolog size 97, PerfScore 1674.52, instruction count 720, allocated bytes for code 3102 (MethodHash=40febaf8) for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindFixedDistanceSets>g__TryFindRawFixedSets|3_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte (FullOpts)
-180 (-8.55 % of base) - System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this
; Assembly listing for method System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():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; 99 single block inlinees; 13 inlinees without PGO data
+; 0 inlinees with PGO data; 99 single block inlinees; 11 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T01] ( 22,149 ) ref -> rbx this class-hnd single-def <System.Xml.Xsl.Xslt.QilGenerator>
-; V01 loc0 [V01,T29] ( 5, 43 ) int -> r15
-;* V02 loc1 [V02 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.Key]>
-;* V03 loc2 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Xsl.Xslt.Key>
+; V00 this [V00,T01] ( 22,277 ) ref -> rbx this class-hnd single-def <System.Xml.Xsl.Xslt.QilGenerator>
+; V01 loc0 [V01,T63] ( 5, 15 ) int -> r15
+; V02 loc1 [V02 ] ( 7, 42 ) struct (24) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.Key]>
+; V03 loc2 [V03,T08] ( 9,144 ) ref -> r14 class-hnd exact <System.Xml.Xsl.Xslt.Key>
;* V04 loc3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Xsl.Qil.QilParameter>
;* V05 loc4 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Xsl.Qil.QilIterator>
-; V06 loc5 [V06,T31] ( 4, 32 ) ref -> [rbp-0x30] class-hnd spill-single-def <System.Xml.Xsl.Qil.QilIterator>
+; V06 loc5 [V06,T51] ( 4, 48 ) ref -> [rbp-0x48] class-hnd spill-single-def <System.Xml.Xsl.Qil.QilIterator>
;* V07 loc6 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Xsl.Qil.QilParameter>
;* V08 loc7 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Xsl.Qil.QilFunction>
;# V09 OutArgs [V09 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V10 tmp1 [V10,T34] ( 2, 32 ) ref -> [rbp-0x38] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V11 tmp2 [V11,T35] ( 2, 32 ) ref -> [rbp-0x40] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V12 tmp3 [V12,T36] ( 2, 32 ) ref -> [rbp-0x48] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V13 tmp4 [V13,T37] ( 2, 32 ) ref -> [rbp-0x50] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V14 tmp5 [V14,T38] ( 2, 32 ) ref -> [rbp-0x58] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V15 tmp6 [V15,T18] ( 3, 48 ) ref -> [rbp-0x60] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V16 tmp7 [V16,T39] ( 2, 32 ) ref -> [rbp-0x68] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V10 tmp1 [V10,T27] ( 2, 64 ) ref -> [rbp-0x50] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V11 tmp2 [V11,T28] ( 2, 64 ) ref -> r13 class-hnd exact "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V12 tmp3 [V12,T29] ( 2, 64 ) ref -> [rbp-0x58] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V13 tmp4 [V13,T30] ( 2, 64 ) ref -> [rbp-0x60] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V14 tmp5 [V14,T31] ( 2, 64 ) ref -> [rbp-0x68] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V15 tmp6 [V15,T23] ( 3, 80 ) ref -> [rbp-0x70] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V16 tmp7 [V16,T32] ( 2, 64 ) ref -> [rbp-0x78] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
;* V17 tmp8 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Xsl.Qil.QilList>
-; V18 tmp9 [V18,T19] ( 3, 48 ) ref -> [rbp-0x70] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V19 tmp10 [V19,T40] ( 2, 32 ) ref -> [rbp-0x78] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V20 tmp11 [V20,T41] ( 2, 32 ) ref -> [rbp-0x80] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V21 tmp12 [V21,T42] ( 2, 32 ) ref -> [rbp-0x88] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V22 tmp13 [V22,T13] ( 5, 80 ) ref -> [rbp-0x90] class-hnd "impAppendStmt" <System.Xml.Xsl.Qil.QilNode>
+; V18 tmp9 [V18,T24] ( 3, 80 ) ref -> [rbp-0x80] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V19 tmp10 [V19,T33] ( 2, 64 ) ref -> [rbp-0x88] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V20 tmp11 [V20,T34] ( 2, 64 ) ref -> [rbp-0x90] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V21 tmp12 [V21,T35] ( 2, 64 ) ref -> [rbp-0x98] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V22 tmp13 [V22,T10] ( 5,128 ) ref -> r13 class-hnd "impAppendStmt" <System.Xml.Xsl.Qil.QilNode>
;* V23 tmp14 [V23 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.Keys>
-; V24 tmp15 [V24,T71] ( 2, 8 ) ref -> rax class-hnd "Inlining Arg" <System.__Canon>
+; V24 tmp15 [V24,T64] ( 2, 8 ) ref -> rax class-hnd "Inlining Arg" <System.__Canon>
;* V25 tmp16 [V25 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.Key]>
;* V26 tmp17 [V26 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Xsl.Qil.QilList>
-; V27 tmp18 [V27,T43] ( 2, 32 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V28 tmp19 [V28,T44] ( 2, 32 ) ref -> [rbp-0x98] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.XmlQueryTypeFactory+ItemType>
+; V27 tmp18 [V27,T36] ( 2, 64 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V28 tmp19 [V28,T37] ( 2, 64 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Xml.Xsl.XmlQueryTypeFactory+ItemType>
;* V29 tmp20 [V29 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
;* V30 tmp21 [V30 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilParameter>
-; V31 tmp22 [V31,T02] ( 8,128 ) ref -> [rbp-0xA0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilParameter>
+; V31 tmp22 [V31,T02] ( 8,256 ) ref -> [rbp-0xA0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilParameter>
;* V32 tmp23 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilParameter>
;* V33 tmp24 [V33 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V34 tmp25 [V34,T20] ( 3, 48 ) byref -> rdi "Inlining Arg"
-; V35 tmp26 [V35,T45] ( 2, 32 ) ref -> rsi class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
-; V36 tmp27 [V36,T46] ( 2, 32 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilUnary>
+; V34 tmp25 [V34,T14] ( 3, 96 ) byref -> rdi "Inlining Arg"
+; V35 tmp26 [V35,T38] ( 2, 64 ) ref -> rsi class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
+; V36 tmp27 [V36,T39] ( 2, 64 ) ref -> r13 class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilUnary>
;* V37 tmp28 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilIterator>
-; V38 tmp29 [V38,T03] ( 8,128 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilIterator>
+; V38 tmp29 [V38,T04] ( 8,224 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilIterator>
;* V39 tmp30 [V39 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilIterator>
;* V40 tmp31 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
-; V41 tmp32 [V41,T47] ( 2, 32 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V42 tmp33 [V42,T21] ( 3, 48 ) byref -> rdi "Inlining Arg"
-; V43 tmp34 [V43,T48] ( 2, 32 ) ref -> rsi class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
-; V44 tmp35 [V44,T63] ( 3, 24 ) ref -> rax class-hnd "Inline return value spill temp" <System.Xml.Xsl.Qil.QilNode>
-; V45 tmp36 [V45,T14] ( 4, 64 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
-; V46 tmp37 [V46,T49] ( 2, 32 ) ref -> [rbp-0xB8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilUnary>
+; V41 tmp32 [V41,T40] ( 2, 64 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
+; V42 tmp33 [V42,T15] ( 3, 96 ) byref -> rdi "Inlining Arg"
+; V43 tmp34 [V43,T41] ( 2, 64 ) ref -> rsi class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
+; V44 tmp35 [V44,T56] ( 3, 32 ) ref -> rax class-hnd "Inline return value spill temp" <System.Xml.Xsl.Qil.QilNode>
+; V45 tmp36 [V45,T22] ( 4, 80 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
+; V46 tmp37 [V46,T42] ( 2, 64 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilUnary>
;* V47 tmp38 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilIterator>
-; V48 tmp39 [V48,T05] ( 7,112 ) ref -> [rbp-0xC0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilIterator>
+; V48 tmp39 [V48,T05] ( 7,224 ) ref -> [rbp-0xB8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilIterator>
;* V49 tmp40 [V49 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilIterator>
;* V50 tmp41 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
-; V51 tmp42 [V51,T50] ( 2, 32 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V52 tmp43 [V52,T51] ( 2, 32 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V53 tmp44 [V53,T52] ( 2, 32 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.XmlQueryTypeFactory+ItemType>
+; V51 tmp42 [V51,T43] ( 2, 64 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
+; V52 tmp43 [V52,T44] ( 2, 64 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
+; V53 tmp44 [V53,T45] ( 2, 64 ) ref -> [rbp-0xC0] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Xsl.XmlQueryTypeFactory+ItemType>
;* V54 tmp45 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
;* V55 tmp46 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilParameter>
-; V56 tmp47 [V56,T04] ( 8,128 ) ref -> [rbp-0xD0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilParameter>
+; V56 tmp47 [V56,T03] ( 8,256 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilParameter>
;* V57 tmp48 [V57 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilParameter>
;* V58 tmp49 [V58 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
;* V59 tmp50 [V59 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V60 tmp51 [V60,T16] ( 6, 48 ) ref -> [rbp-0xD8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilList>
+; V60 tmp51 [V60,T12] ( 6, 96 ) ref -> [rbp-0xD0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilList>
;* V61 tmp52 [V61 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
;* V62 tmp53 [V62 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilBinary>
-; V63 tmp54 [V63,T11] ( 6, 96 ) ref -> [rbp-0xE0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilBinary>
+; V63 tmp54 [V63,T07] ( 6,192 ) ref -> [rbp-0xD8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilBinary>
;* V64 tmp55 [V64 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilBinary>
;* V65 tmp56 [V65 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
;* V66 tmp57 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.XmlQueryTypeFactory+ItemType>
-; V67 tmp58 [V67,T68] ( 2, 16 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Xml.Xsl.Qil.QilNode>
+; V67 tmp58 [V67,T57] ( 2, 32 ) ref -> rsi class-hnd "Inline return value spill temp" <System.Xml.Xsl.Qil.QilNode>
;* V68 tmp59 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilLoop>
-; V69 tmp60 [V69,T06] ( 7,112 ) ref -> [rbp-0xE8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilLoop>
+; V69 tmp60 [V69,T06] ( 7,224 ) ref -> [rbp-0xE0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilLoop>
;* V70 tmp61 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilLoop>
;* V71 tmp62 [V71 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
-; V72 tmp63 [V72,T53] ( 2, 32 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V73 tmp64 [V73,T22] ( 3, 48 ) ref -> [rbp-0xF0] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
+; V72 tmp63 [V72,T46] ( 2, 64 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
+; V73 tmp64 [V73,T26] ( 3, 64 ) ref -> [rbp-0xE8] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
;* V74 tmp65 [V74 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilLoop>
-; V75 tmp66 [V75,T07] ( 7,112 ) ref -> [rbp-0xF8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilLoop>
+; V75 tmp66 [V75,T11] ( 7,112 ) ref -> [rbp-0xF0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilLoop>
;* V76 tmp67 [V76 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilLoop>
;* V77 tmp68 [V77 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilFactory>
-; V78 tmp69 [V78,T54] ( 2, 32 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
+; V78 tmp69 [V78,T58] ( 2, 32 ) ref -> rax class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
;* V79 tmp70 [V79 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.XsltQilFactory>
-; V80 tmp71 [V80,T55] ( 2, 32 ) ref -> [rbp-0x100] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
-; V81 tmp72 [V81,T56] ( 2, 32 ) ref -> [rbp-0x108] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Qil.QilFactory>
+; V80 tmp71 [V80,T47] ( 2, 64 ) ref -> [rbp-0xF8] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.Qil.QilNode>
+; V81 tmp72 [V81,T48] ( 2, 64 ) ref -> [rbp-0x100] class-hnd exact spill-single-def "non-inline candidate call" <System.Xml.Xsl.Qil.QilFactory>
;* V82 tmp73 [V82 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Xsl.Qil.QilFunction>
-; V83 tmp74 [V83,T57] ( 2, 32 ) ref -> [rbp-0x110] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V84 tmp75 [V84,T00] ( 12,192 ) ref -> [rbp-0x118] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilFunction>
+; V83 tmp74 [V83,T49] ( 2, 64 ) ref -> [rbp-0x108] class-hnd spill-single-def "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
+; V84 tmp75 [V84,T00] ( 12,384 ) ref -> [rbp-0x110] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Xsl.Qil.QilFunction>
;* V85 tmp76 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Xml.Xsl.Qil.QilFunction>
;* V86 tmp77 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Xml.Xsl.XmlQueryType>
-; V87 tmp78 [V87,T10] ( 7, 96 ) ref -> [rbp-0x120] class-hnd "Inlining Arg" <System.String>
-; V88 tmp79 [V88,T69] ( 2, 16 ) ref -> rsi class-hnd "Inline return value spill temp" <System.String>
+; V87 tmp78 [V87,T09] ( 7,144 ) ref -> r13 class-hnd "Inlining Arg" <System.String>
+; V88 tmp79 [V88,T62] ( 2, 16 ) ref -> r13 class-hnd "Inline return value spill temp" <System.String>
;* V89 tmp80 [V89 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.String>
-; V90 tmp81 [V90,T32] ( 4, 32 ) ref -> [rbp-0x128] class-hnd exact spill-single-def "Inline stloc first use temp" <System.String>
+; V90 tmp81 [V90,T55] ( 4, 32 ) ref -> [rbp-0x118] class-hnd exact spill-single-def "Inline stloc first use temp" <System.String>
;* V91 tmp82 [V91 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
-; V92 tmp83 [V92,T58] ( 2, 32 ) byref -> rdi "Inlining Arg"
-; V93 tmp84 [V93,T59] ( 2, 32 ) byref -> rsi "Inlining Arg"
+; V92 tmp83 [V92,T59] ( 2, 32 ) byref -> rdi "Inlining Arg"
+; V93 tmp84 [V93,T60] ( 2, 32 ) byref -> rsi "Inlining Arg"
;* V94 tmp85 [V94 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V95 tmp86 [V95,T23] ( 3, 48 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilList>
-;* V96 tmp87 [V96,T61] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V97 tmp88 [V97 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.Key]>
-;* V98 tmp89 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.Keys>
-; V99 tmp90 [V99,T72] ( 3, 6 ) byref -> rbx single-def "Inlining Arg"
-; V100 tmp91 [V100,T15] ( 4, 50 ) ref -> r14 "field V02._list (fldOffset=0x0)" P-INDEP
-; V101 tmp92 [V101,T09] ( 9, 80 ) ref -> [rbp-0x130] spill-single-def "field V02._current (fldOffset=0x8)" P-INDEP
-; V102 tmp93 [V102,T08] ( 6, 82 ) int -> r12 "field V02._index (fldOffset=0x10)" P-INDEP
-; V103 tmp94 [V103,T67] ( 2, 18 ) int -> r13 "field V02._version (fldOffset=0x14)" P-INDEP
-; V104 tmp95 [V104,T73] ( 3, 6 ) ref -> r14 "field V25._list (fldOffset=0x0)" P-INDEP
-;* V105 tmp96 [V105 ] ( 0, 0 ) ref -> zero-ref "field V25._current (fldOffset=0x8)" P-INDEP
-;* V106 tmp97 [V106,T75] ( 0, 0 ) int -> zero-ref "field V25._index (fldOffset=0x10)" P-INDEP
-; V107 tmp98 [V107,T74] ( 2, 4 ) int -> r13 "field V25._version (fldOffset=0x14)" P-INDEP
-; V108 tmp99 [V108,T12] ( 3, 96 ) ref -> rdi "arr expr"
-; V109 tmp100 [V109,T24] ( 3, 48 ) ref -> rdi "argument with side effect"
-; V110 tmp101 [V110,T25] ( 3, 48 ) ref -> rax "argument with side effect"
-; V111 tmp102 [V111,T26] ( 3, 48 ) ref -> rdi "argument with side effect"
-; V112 tmp103 [V112,T27] ( 3, 48 ) ref -> rax "argument with side effect"
-; V113 tmp104 [V113,T60] ( 2, 32 ) ref -> rsi "argument with side effect"
-; V114 cse0 [V114,T70] ( 2, 16 ) ref -> rdi "CSE #10: conservative"
-; V115 cse1 [V115,T64] ( 3, 24 ) ref -> [rbp-0x138] spill-single-def "CSE #01: conservative"
-; V116 cse2 [V116,T65] ( 3, 24 ) ref -> [rbp-0x140] spill-single-def "CSE #07: conservative"
-; V117 cse3 [V117,T17] ( 6, 48 ) ref -> rdi "CSE #09: moderate"
-; V118 cse4 [V118,T30] ( 5, 40 ) ref -> rdi "CSE #04: moderate"
-; V119 cse5 [V119,T33] ( 4, 32 ) ref -> [rbp-0x148] spill-single-def "CSE #08: conservative"
-; V120 cse6 [V120,T62] ( 2, 32 ) int -> rdi "CSE #13: moderate"
-; V121 cse7 [V121,T28] ( 2, 32 ) int -> rdi "CSE #14: moderate"
-; V122 cse8 [V122,T66] ( 3, 24 ) ref -> rax "CSE #02: conservative"
+; V95 tmp86 [V95,T16] ( 3, 96 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilList>
+;* V96 tmp87 [V96 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.Keys>
+; V97 tmp88 [V97,T65] ( 3, 6 ) byref -> rbx single-def "Inlining Arg"
+; V98 tmp89 [V98 ] ( 3, 20 ) ref -> [rbp-0x40] do-not-enreg[X] addr-exposed "field V02._list (fldOffset=0x0)" P-DEP
+; V99 tmp90 [V99 ] ( 4, 36 ) ref -> [rbp-0x38] do-not-enreg[X] addr-exposed "field V02._current (fldOffset=0x8)" P-DEP
+; V100 tmp91 [V100 ] ( 3, 20 ) int -> [rbp-0x30] do-not-enreg[X] addr-exposed "field V02._index (fldOffset=0x10)" P-DEP
+; V101 tmp92 [V101 ] ( 3, 20 ) int -> [rbp-0x2C] do-not-enreg[X] addr-exposed "field V02._version (fldOffset=0x14)" P-DEP
+; V102 tmp93 [V102,T66] ( 3, 6 ) ref -> rax "field V25._list (fldOffset=0x0)" P-INDEP
+;* V103 tmp94 [V103,T68] ( 0, 0 ) ref -> zero-ref "field V25._current (fldOffset=0x8)" P-INDEP
+;* V104 tmp95 [V104,T69] ( 0, 0 ) int -> zero-ref "field V25._index (fldOffset=0x10)" P-INDEP
+; V105 tmp96 [V105,T67] ( 2, 4 ) int -> rdi "field V25._version (fldOffset=0x14)" P-INDEP
+; V106 tmp97 [V106,T17] ( 3, 96 ) ref -> rdi "argument with side effect"
+; V107 tmp98 [V107,T18] ( 3, 96 ) ref -> rax "argument with side effect"
+; V108 tmp99 [V108,T19] ( 3, 96 ) ref -> rdi "argument with side effect"
+; V109 tmp100 [V109,T20] ( 3, 96 ) ref -> rax "argument with side effect"
+; V110 tmp101 [V110,T50] ( 2, 64 ) ref -> rsi "argument with side effect"
+; V111 cse0 [V111,T61] ( 2, 32 ) ref -> rdi "CSE #10: conservative"
+; V112 cse1 [V112,T52] ( 3, 48 ) ref -> r13 "CSE #01: conservative"
+; V113 cse2 [V113,T53] ( 3, 48 ) ref -> [rbp-0x120] spill-single-def "CSE #07: conservative"
+; V114 cse3 [V114,T13] ( 6, 96 ) ref -> rdi "CSE #09: moderate"
+; V115 cse4 [V115,T21] ( 5, 80 ) ref -> rdi "CSE #04: moderate"
+; V116 cse5 [V116,T25] ( 4, 64 ) ref -> [rbp-0x128] spill-single-def "CSE #08: conservative"
+; V117 cse6 [V117,T54] ( 3, 48 ) ref -> r13 "CSE #02: conservative"
;
-; Lcl frame size = 296
+; Lcl frame size = 264
G_M6951_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 296
- lea rbp, [rsp+0x150]
+ sub rsp, 264
+ lea rbp, [rsp+0x130]
+ vxorps xmm8, xmm8, xmm8
+ vmovdqa xmmword ptr [rbp-0x40], xmm8
+ xor eax, eax
+ mov qword ptr [rbp-0x30], rax
mov rbx, rdi
- ;; size=28 bbWeight=1 PerfScore 7.00
+ ;; size=44 bbWeight=1 PerfScore 10.58
G_M6951_IG02:
xor r15d, r15d
- jmp G_M6951_IG19
+ jmp G_M6951_IG21
;; size=8 bbWeight=1 PerfScore 2.25
G_M6951_IG03:
mov rdi, gword ptr [rbx+0x78]
mov rdi, gword ptr [rdi+0x68]
mov rdi, gword ptr [rdi+0x08]
mov esi, r15d
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.IList`1[System.__Canon]:get_Item(int):System.__Canon:this
call [r11]System.Collections.Generic.IList`1[System.__Canon]:get_Item(int):System.__Canon:this
- mov r14, rax
- mov r13d, dword ptr [r14+0x14]
- xor r12d, r12d
- jmp G_M6951_IG17
- ;; size=43 bbWeight=2 PerfScore 28.00
+ mov edi, dword ptr [rax+0x14]
+ mov gword ptr [rbp-0x40], rax
+ xor rsi, rsi
+ mov gword ptr [rbp-0x38], rsi
+ ;; size=41 bbWeight=2 PerfScore 27.50
G_M6951_IG04:
+ mov dword ptr [rbp-0x30], esi
+ mov dword ptr [rbp-0x2C], edi
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.Key]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ je G_M6951_IG20
+ ;; size=40 bbWeight=2 PerfScore 14.50
+G_M6951_IG05:
+ mov r14, gword ptr [rbp-0x38]
lea rdi, bword ptr [rbx+0xB8]
- mov rsi, rax
+ mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x130]
- mov edi, dword ptr [rax+0x34]
+ mov edi, dword ptr [r14+0x34]
mov dword ptr [rbx+0xF0], edi
mov rdi, gword ptr [rbx+0x08]
- mov rsi, gword ptr [rax+0x10]
- mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:EnterScope(System.Xml.Xsl.Xslt.NsDecl):ubyte:this
+ mov rsi, gword ptr [r14+0x10]
+ mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:EnterScope(System.Xml.Xsl.Xslt.NsDecl):ubyte:this
cmp dword ptr [rdi], edi
- call [rcx]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:EnterScope(System.Xml.Xsl.Xslt.NsDecl):ubyte:this
+ call [rax]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:EnterScope(System.Xml.Xsl.Xslt.NsDecl):ubyte:this
test eax, eax
- je SHORT G_M6951_IG05
+ je SHORT G_M6951_IG07
+ ;; size=55 bbWeight=16 PerfScore 276.00
+G_M6951_IG06:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:BuildDebuggerNamespaces():System.Xml.Xsl.Qil.QilList:this
call [rax]System.Xml.Xsl.Xslt.QilGenerator:BuildDebuggerNamespaces():System.Xml.Xsl.Qil.QilList:this
- ;; size=72 bbWeight=8 PerfScore 166.00
-G_M6951_IG05:
+ ;; size=15 bbWeight=8 PerfScore 28.00
+G_M6951_IG07:
mov rdi, gword ptr [rbx+0x20]
mov rax, 0xD1FFAB1E ; const ptr
- mov rax, gword ptr [rax]
- mov gword ptr [rbp-0x138], rax
- mov gword ptr [rbp-0x98], rax
+ mov r13, gword ptr [rax]
+ mov r12, r13
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilParameter
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0xA0], rax
mov dword ptr [rax+0x20], 16
xor rdi, rdi
mov gword ptr [rax+0x30], rdi
- ;; size=73 bbWeight=8 PerfScore 126.00
-G_M6951_IG06:
+ ;; size=62 bbWeight=16 PerfScore 224.00
+G_M6951_IG08:
mov gword ptr [rax+0x38], rdi
lea rdi, bword ptr [rax+0x08]
- mov rsi, gword ptr [rbp-0x98]
+ mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0xA0]
- lea rdi, bword ptr [rax+0x08]
- mov rsi, gword ptr [rbp-0x138]
+ mov r12, gword ptr [rbp-0xA0]
+ lea rdi, bword ptr [r12+0x08]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
lea rdi, bword ptr [rbx+0x100]
mov dword ptr [rdi+0x10], 3
lea rdi, bword ptr [rdi+0x08]
- mov rsi, gword ptr [rbp-0xA0]
+ mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbx+0x20]
- mov gword ptr [rbp-0x38], rax
- mov gword ptr [rbp-0x40], rax
- mov rdx, gword ptr [rbp-0x130]
- mov rsi, gword ptr [rdx+0x40]
+ mov r13, gword ptr [rbx+0x20]
+ mov gword ptr [rbp-0x50], r13
+ mov rsi, gword ptr [r14+0x40]
mov rdi, rbx
- mov r8, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:CompileKeyMatch(System.String):System.Xml.Xsl.Qil.QilNode:this
- call [r8]System.Xml.Xsl.Xslt.QilGenerator:CompileKeyMatch(System.String):System.Xml.Xsl.Qil.QilNode:this
+ mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:CompileKeyMatch(System.String):System.Xml.Xsl.Qil.QilNode:this
+ call [rcx]System.Xml.Xsl.Xslt.QilGenerator:CompileKeyMatch(System.String):System.Xml.Xsl.Qil.QilNode:this
mov rsi, rax
- mov rdi, gword ptr [rbp-0x40]
- mov rdi, gword ptr [rdi+0x08]
+ mov rdi, gword ptr [r13+0x08]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:OptimizeBarrier(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:OptimizeBarrier(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
- mov gword ptr [rbp-0xA8], rax
- mov rdi, gword ptr [rbp-0x38]
+ mov r13, rax
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilIterator
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0xB0], rax
+ mov gword ptr [rbp-0xA8], rax
mov dword ptr [rax+0x20], 14
lea rdi, bword ptr [rax+0x30]
- mov rsi, gword ptr [rbp-0xA8]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0xB0]
- mov rdi, gword ptr [rax+0x30]
- mov rcx, qword ptr [rdi]
- mov rcx, qword ptr [rcx+0x40]
- call [rcx+0x20]System.Xml.Xsl.Qil.QilNode:get_XmlType():System.Xml.Xsl.XmlQueryType:this
+ mov r13, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [r13+0x30]
+ mov rax, qword ptr [rdi]
+ mov rax, qword ptr [rax+0x40]
+ call [rax+0x20]System.Xml.Xsl.Qil.QilNode:get_XmlType():System.Xml.Xsl.XmlQueryType:this
mov rdi, rax
mov rax, qword ptr [rax]
- ;; size=227 bbWeight=8 PerfScore 448.00
-G_M6951_IG07:
mov rax, qword ptr [rax+0x60]
call [rax+0x30]System.Xml.Xsl.XmlQueryType:get_Prime():System.Xml.Xsl.XmlQueryType:this
- mov rcx, gword ptr [rbp-0xB0]
- lea rdi, bword ptr [rcx+0x08]
+ lea rdi, bword ptr [r13+0x08]
mov rsi, rax
+ ;; size=206 bbWeight=16 PerfScore 880.00
+G_M6951_IG09:
call CORINFO_HELP_ASSIGN_REF
lea rdi, bword ptr [rbx+0x100]
mov dword ptr [rdi+0x10], 3
lea rdi, bword ptr [rdi+0x08]
- mov rsi, gword ptr [rbp-0xB0]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbx+0x20]
- mov gword ptr [rbp-0x48], rax
+ mov gword ptr [rbp-0x58], rax
mov rdi, rbx
- mov rsi, gword ptr [rbp-0x130]
+ mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:CompileKeyUse(System.Xml.Xsl.Xslt.Key):System.Xml.Xsl.Qil.QilNode:this
call [rcx]System.Xml.Xsl.Xslt.QilGenerator:CompileKeyUse(System.Xml.Xsl.Xslt.Key):System.Xml.Xsl.Qil.QilNode:this
mov rsi, rax
- mov rdi, gword ptr [rbp-0x48]
+ mov rdi, gword ptr [rbp-0x58]
mov rdi, gword ptr [rdi+0x08]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:For(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilIterator:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:For(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilIterator:this
- mov gword ptr [rbp-0x30], rax
+ mov gword ptr [rbp-0x48], rax
mov rdi, gword ptr [rbx+0x20]
- mov gword ptr [rbp-0x50], rdi
- mov gword ptr [rbp-0x58], rdi
mov gword ptr [rbp-0x60], rdi
+ mov gword ptr [rbp-0x68], rdi
+ mov gword ptr [rbp-0x70], rdi
mov rsi, rax
mov r9, 0xD1FFAB1E ; code for System.Xml.Xsl.XPath.XPathQilFactory:ConvertToString(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this
cmp dword ptr [rdi], edi
call [r9]System.Xml.Xsl.XPath.XPathQilFactory:ConvertToString(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this
- mov rdi, gword ptr [rbp-0x60]
+ mov rdi, gword ptr [rbp-0x70]
cmp byte ptr [rdi+0x10], 0
- jne SHORT G_M6951_IG08
- mov rsi, gword ptr [rbp-0x30]
+ jne SHORT G_M6951_IG11
+ ;; size=130 bbWeight=16 PerfScore 608.00
+G_M6951_IG10:
+ mov rsi, gword ptr [rbp-0x48]
cmp rax, gword ptr [rsi+0x30]
- jne SHORT G_M6951_IG08
- jmp SHORT G_M6951_IG09
- ;; size=171 bbWeight=8 PerfScore 426.00
-G_M6951_IG08:
+ jne SHORT G_M6951_IG11
+ jmp SHORT G_M6951_IG12
+ ;; size=12 bbWeight=8 PerfScore 56.00
+G_M6951_IG11:
mov rdi, gword ptr [rdi+0x08]
- mov rsi, gword ptr [rbp-0x30]
+ mov rsi, gword ptr [rbp-0x48]
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:Loop(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilLoop:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:Loop(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilLoop:this
;; size=25 bbWeight=8 PerfScore 76.00
-G_M6951_IG09:
- mov rdi, gword ptr [rbp-0x58]
+G_M6951_IG12:
+ mov rdi, gword ptr [rbp-0x68]
mov rdi, gword ptr [rdi+0x08]
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:OptimizeBarrier(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:OptimizeBarrier(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
- mov gword ptr [rbp-0xB8], rax
- mov rdi, gword ptr [rbp-0x50]
+ mov gword ptr [rbp-0xB0], rax
+ mov rdi, gword ptr [rbp-0x60]
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilIterator
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0xC0], rax
+ mov gword ptr [rbp-0xB8], rax
mov dword ptr [rax+0x20], 14
lea rdi, bword ptr [rax+0x30]
- mov rsi, gword ptr [rbp-0xB8]
+ mov rsi, gword ptr [rbp-0xB0]
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0xC0]
+ mov rax, gword ptr [rbp-0xB8]
mov rdi, gword ptr [rax+0x30]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x20]System.Xml.Xsl.Qil.QilNode:get_XmlType():System.Xml.Xsl.XmlQueryType:this
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x60]
call [rax+0x30]System.Xml.Xsl.XmlQueryType:get_Prime():System.Xml.Xsl.XmlQueryType:this
- mov rcx, gword ptr [rbp-0xC0]
+ mov rcx, gword ptr [rbp-0xB8]
lea rdi, bword ptr [rcx+0x08]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbx+0x20]
- mov gword ptr [rbp-0x148], rax
+ mov gword ptr [rbp-0x128], rax
mov rdi, rax
mov rcx, 0xD1FFAB1E ; const ptr
mov rcx, gword ptr [rcx]
- mov gword ptr [rbp-0x140], rcx
- mov gword ptr [rbp-0xC8], rcx
+ mov gword ptr [rbp-0x120], rcx
+ mov gword ptr [rbp-0xC0], rcx
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilParameter
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0xD0], rax
+ mov gword ptr [rbp-0xC8], rax
mov dword ptr [rax+0x20], 16
xor rdi, rdi
mov gword ptr [rax+0x30], rdi
- ;; size=224 bbWeight=8 PerfScore 474.00
-G_M6951_IG10:
+ ;; size=224 bbWeight=16 PerfScore 948.00
+G_M6951_IG13:
mov gword ptr [rax+0x38], rdi
lea rdi, bword ptr [rax+0x08]
- mov rsi, gword ptr [rbp-0xC8]
+ mov rsi, gword ptr [rbp-0xC0]
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0xD0]
+ mov rax, gword ptr [rbp-0xC8]
lea rdi, bword ptr [rax+0x08]
- mov rsi, gword ptr [rbp-0x140]
+ mov rsi, gword ptr [rbp-0x120]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, gword ptr [rbp-0x148]
- mov gword ptr [rbp-0x68], rdi
+ mov rdi, gword ptr [rbp-0x128]
+ mov gword ptr [rbp-0x78], rdi
mov rdi, gword ptr [rdi+0x08]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:FormalParameterList():System.Xml.Xsl.Qil.QilList:this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Xsl.Qil.QilFactory:FormalParameterList():System.Xml.Xsl.Qil.QilList:this
- mov gword ptr [rbp-0xD8], rax
- mov esi, dword ptr [rax+0x24]
- mov rdi, rax
- mov rdx, gword ptr [rbp-0xA0]
- mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
- call [rcx]System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
- mov rax, gword ptr [rbp-0xD8]
+ mov gword ptr [rbp-0xD0], rax
mov esi, dword ptr [rax+0x24]
mov rdi, rax
- mov rdx, gword ptr [rbp-0xD0]
+ mov rdx, r12
mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
call [rcx]System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
+ mov r12, gword ptr [rbp-0xD0]
+ mov esi, dword ptr [r12+0x24]
+ mov rdi, r12
+ mov rdx, gword ptr [rbp-0xC8]
+ mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
+ call [rax]System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
mov rdi, gword ptr [rbx+0x20]
- mov gword ptr [rbp-0x70], rdi
- mov gword ptr [rbp-0x78], rdi
mov gword ptr [rbp-0x80], rdi
mov gword ptr [rbp-0x88], rdi
+ mov gword ptr [rbp-0x90], rdi
+ mov gword ptr [rbp-0x98], rdi
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilBinary
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0xE0], rax
+ mov gword ptr [rbp-0xD8], rax
mov dword ptr [rax+0x20], 52
lea rdi, bword ptr [rax+0x28]
- mov rsi, gword ptr [rbp-0xC0]
+ mov rsi, gword ptr [rbp-0xB8]
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0xE0]
+ mov rax, gword ptr [rbp-0xD8]
lea rdi, bword ptr [rax+0x30]
- mov rsi, gword ptr [rbp-0xD0]
+ mov rsi, gword ptr [rbp-0xC8]
call CORINFO_HELP_ASSIGN_REF
- ;; size=234 bbWeight=8 PerfScore 420.00
-G_M6951_IG11:
mov rdi, 0xD1FFAB1E ; const ptr
+ ;; size=248 bbWeight=16 PerfScore 832.00
+G_M6951_IG14:
mov rsi, gword ptr [rdi]
- mov rax, gword ptr [rbp-0xE0]
+ mov rax, gword ptr [rbp-0xD8]
lea rdi, bword ptr [rax+0x08]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, gword ptr [rbp-0x88]
+ mov rdi, gword ptr [rbp-0x98]
movsx rdi, byte ptr [rdi+0x10]
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilLoop
call CORINFO_HELP_NEWSFAST
mov rsi, rax
- mov gword ptr [rbp-0xE8], rsi
+ mov gword ptr [rbp-0xE0], rsi
mov dword ptr [rsi+0x20], 61
lea rdi, bword ptr [rsi+0x28]
- mov rsi, gword ptr [rbp-0xC0]
+ mov rsi, gword ptr [rbp-0xB8]
call CORINFO_HELP_ASSIGN_REF
- mov rsi, gword ptr [rbp-0xE8]
- lea rdi, bword ptr [rsi+0x30]
mov rsi, gword ptr [rbp-0xE0]
+ lea rdi, bword ptr [rsi+0x30]
+ mov rsi, gword ptr [rbp-0xD8]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, gword ptr [rbp-0xE8]
+ mov rdi, gword ptr [rbp-0xE0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilTypeChecker:CheckFilter(System.Xml.Xsl.Qil.QilLoop):System.Xml.Xsl.XmlQueryType
call [rax]System.Xml.Xsl.Qil.QilTypeChecker:CheckFilter(System.Xml.Xsl.Qil.QilLoop):System.Xml.Xsl.XmlQueryType
- mov rsi, gword ptr [rbp-0xE8]
+ mov rsi, gword ptr [rbp-0xE0]
lea rdi, bword ptr [rsi+0x08]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
- mov rsi, gword ptr [rbp-0xE8]
- mov rdi, gword ptr [rbp-0x80]
+ mov rsi, gword ptr [rbp-0xE0]
+ mov rdi, gword ptr [rbp-0x90]
mov rdi, gword ptr [rdi+0x08]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:IsEmpty(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:IsEmpty(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilUnary:this
mov rsi, rax
- mov rdi, gword ptr [rbp-0x78]
+ mov rdi, gword ptr [rbp-0x88]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilPatternFactory:Not(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilPatternFactory:Not(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this
- mov gword ptr [rbp-0xF0], rax
- mov rdi, gword ptr [rbp-0x70]
+ mov gword ptr [rbp-0xE8], rax
+ mov rdi, gword ptr [rbp-0x80]
cmp byte ptr [rdi+0x10], 0
- jne SHORT G_M6951_IG13
+ jne SHORT G_M6951_IG16
+ ;; size=213 bbWeight=16 PerfScore 796.00
+G_M6951_IG15:
cmp dword ptr [rax+0x20], 18
- ;; size=221 bbWeight=8 PerfScore 424.00
-G_M6951_IG12:
- jne SHORT G_M6951_IG13
- mov rax, gword ptr [rbp-0xB0]
- mov rcx, gword ptr [rax+0x30]
- mov gword ptr [rbp-0x90], rcx
- jmp G_M6951_IG14
- ;; size=25 bbWeight=8 PerfScore 56.00
-G_M6951_IG13:
+ jne SHORT G_M6951_IG16
+ mov r13, gword ptr [r13+0x30]
+ jmp SHORT G_M6951_IG17
+ ;; size=12 bbWeight=8 PerfScore 64.00
+G_M6951_IG16:
mov rdi, gword ptr [rdi+0x08]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilLoop
call CORINFO_HELP_NEWSFAST
- mov rcx, rax
- mov gword ptr [rbp-0xF8], rcx
- mov dword ptr [rcx+0x20], 61
- lea rdi, bword ptr [rcx+0x28]
- mov rsi, gword ptr [rbp-0xB0]
+ mov gword ptr [rbp-0xF0], rax
+ mov dword ptr [rax+0x20], 61
+ lea rdi, bword ptr [rax+0x28]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
- mov rcx, gword ptr [rbp-0xF8]
- lea rdi, bword ptr [rcx+0x30]
- mov rsi, gword ptr [rbp-0xF0]
+ mov r13, gword ptr [rbp-0xF0]
+ lea rdi, bword ptr [r13+0x30]
+ mov rsi, gword ptr [rbp-0xE8]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, gword ptr [rbp-0xF8]
+ mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilTypeChecker:CheckFilter(System.Xml.Xsl.Qil.QilLoop):System.Xml.Xsl.XmlQueryType
call [rax]System.Xml.Xsl.Qil.QilTypeChecker:CheckFilter(System.Xml.Xsl.Qil.QilLoop):System.Xml.Xsl.XmlQueryType
- mov rcx, gword ptr [rbp-0xF8]
- lea rdi, bword ptr [rcx+0x08]
+ lea rdi, bword ptr [r13+0x08]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
- mov rcx, gword ptr [rbp-0xF8]
- mov gword ptr [rbp-0x90], rcx
- ;; size=130 bbWeight=8 PerfScore 188.00
-G_M6951_IG14:
+ ;; size=98 bbWeight=8 PerfScore 150.00
+G_M6951_IG17:
mov rdi, gword ptr [rbx+0x20]
mov rdi, gword ptr [rdi+0x08]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilFactory:False():System.Xml.Xsl.Qil.QilNode:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Qil.QilFactory:False():System.Xml.Xsl.Qil.QilNode:this
- mov gword ptr [rbp-0x100], rax
- mov rdi, gword ptr [rbp-0x68]
+ mov gword ptr [rbp-0xF8], rax
+ mov rdi, gword ptr [rbp-0x78]
mov rcx, gword ptr [rdi+0x08]
- mov gword ptr [rbp-0x108], rcx
- mov rdi, gword ptr [rbp-0x90]
- mov gword ptr [rbp-0x90], rdi
- mov rdx, qword ptr [rdi]
+ mov gword ptr [rbp-0x100], rcx
+ mov rdi, r13
+ mov rdx, qword ptr [r13]
mov rdx, qword ptr [rdx+0x40]
call [rdx+0x20]System.Xml.Xsl.Qil.QilNode:get_XmlType():System.Xml.Xsl.XmlQueryType:this
- mov gword ptr [rbp-0x110], rax
- mov rdi, gword ptr [rbp-0x108]
+ mov gword ptr [rbp-0x108], rax
+ mov rdi, gword ptr [rbp-0x100]
cmp byte ptr [rdi], dil
mov rdi, 0xD1FFAB1E ; System.Xml.Xsl.Qil.QilFunction
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x118], rax
+ mov gword ptr [rbp-0x110], rax
mov dword ptr [rax+0x20], 65
lea rdi, bword ptr [rax+0x30]
- mov rsi, gword ptr [rbp-0xD8]
+ mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x118]
- lea rdi, bword ptr [rax+0x38]
- mov rsi, gword ptr [rbp-0x90]
+ mov r12, gword ptr [rbp-0x110]
+ lea rdi, bword ptr [r12+0x38]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x118]
- lea rdi, bword ptr [rax+0x40]
- mov rsi, gword ptr [rbp-0x100]
+ lea rdi, bword ptr [r12+0x40]
+ mov rsi, gword ptr [rbp-0xF8]
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x118]
- lea rdi, bword ptr [rax+0x08]
- mov rsi, gword ptr [rbp-0x110]
+ lea rdi, bword ptr [r12+0x08]
+ mov rsi, gword ptr [rbp-0x108]
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x118]
- mov rsi, gword ptr [rax+0x08]
- lea rdi, bword ptr [rax+0x08]
+ mov rsi, gword ptr [r12+0x08]
+ lea rdi, bword ptr [r12+0x08]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, gword ptr [rbp-0x130]
+ mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.Key:GetDebugName():System.String:this
call [rax]System.Xml.Xsl.Xslt.Key:GetDebugName():System.String:this
- ;; size=238 bbWeight=8 PerfScore 434.00
-G_M6951_IG15:
- mov rsi, rax
- cmp dword ptr [rsi+0x08], 0x3E8
- jle SHORT G_M6951_IG16
- mov gword ptr [rbp-0x120], rsi
- cmp dword ptr [rsi+0x08], 0x3E8
- jb G_M6951_IG24
+ mov r13, rax
+ cmp dword ptr [r13+0x08], 0x3E8
+ jle SHORT G_M6951_IG19
+ ;; size=213 bbWeight=16 PerfScore 824.00
+G_M6951_IG18:
+ cmp dword ptr [r13+0x08], 0x3E8
+ jb G_M6951_IG25
mov edi, 0x3E8
call System.String:FastAllocateString(int):System.String
- mov gword ptr [rbp-0x128], rax
+ mov gword ptr [rbp-0x118], rax
cmp byte ptr [rax], al
lea rdi, bword ptr [rax+0x0C]
- mov rsi, gword ptr [rbp-0x120]
- add rsi, 12
+ lea rsi, bword ptr [r13+0x0C]
mov edx, 0x7D0
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rcx]System.SpanHelpers:Memmove(byref,byref,ulong)
- mov rsi, gword ptr [rbp-0x128]
- mov rax, rsi
- mov rsi, rax
- ;; size=96 bbWeight=8 PerfScore 170.00
-G_M6951_IG16:
- mov rax, gword ptr [rbp-0x118]
- lea rdi, bword ptr [rax+0x28]
+ mov r13, gword ptr [rbp-0x118]
+ ;; size=65 bbWeight=8 PerfScore 118.00
+G_M6951_IG19:
+ lea rdi, bword ptr [r12+0x28]
+ mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
- mov rax, gword ptr [rbp-0x130]
- mov rsi, gword ptr [rax+0x08]
- mov rdi, gword ptr [rbp-0x118]
- mov rcx, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:SetLineInfo(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.ISourceLineInfo):System.Xml.Xsl.Qil.QilNode
- call [rcx]System.Xml.Xsl.Xslt.QilGenerator:SetLineInfo(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.ISourceLineInfo):System.Xml.Xsl.Qil.QilNode
- mov rdi, gword ptr [rbp-0x130]
- lea rdi, bword ptr [rdi+0x50]
- mov rsi, gword ptr [rbp-0x118]
+ mov rsi, gword ptr [r14+0x08]
+ mov rdi, r12
+ mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.QilGenerator:SetLineInfo(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.ISourceLineInfo):System.Xml.Xsl.Qil.QilNode
+ call [rax]System.Xml.Xsl.Xslt.QilGenerator:SetLineInfo(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.ISourceLineInfo):System.Xml.Xsl.Qil.QilNode
+ lea rdi, bword ptr [r14+0x50]
+ mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbx+0x80]
mov esi, dword ptr [rdi+0x24]
- mov rdx, gword ptr [rbp-0x118]
+ mov rdx, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
call [rax]System.Xml.Xsl.Qil.QilList:Insert(int,System.Xml.Xsl.Qil.QilNode):this
mov rdi, gword ptr [rbx+0x08]
mov rax, 0xD1FFAB1E ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:ExitScope():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:ExitScope():this
- ;; size=116 bbWeight=8 PerfScore 238.00
-G_M6951_IG17:
- mov edi, dword ptr [r14+0x14]
- cmp r13d, edi
- jne G_M6951_IG25
- mov edi, dword ptr [r14+0x10]
- cmp r12d, edi
- jae SHORT G_M6951_IG18
- mov rdi, gword ptr [r14+0x08]
- cmp r12d, dword ptr [rdi+0x08]
- jae SHORT G_M6951_IG23
- mov esi, r12d
- mov rax, gword ptr [rdi+8*rsi+0x10]
- mov gword ptr [rbp-0x130], rax
- inc r12d
- jmp G_M6951_IG04
- ;; size=55 bbWeight=16 PerfScore 288.00
-G_M6951_IG18:
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.Key]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M6951_IG05
+ ;; size=121 bbWeight=16 PerfScore 480.00
+G_M6951_IG20:
inc r15d
- ;; size=3 bbWeight=16 PerfScore 4.00
-G_M6951_IG19:
+ ;; size=3 bbWeight=2 PerfScore 0.50
+G_M6951_IG21:
mov rdi, gword ptr [rbx+0x78]
mov rdi, gword ptr [rdi+0x68]
mov rdi, gword ptr [rdi+0x08]
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.ICollection`1[System.__Canon]:get_Count():int:this
call [r11]System.Collections.Generic.ICollection`1[System.__Canon]:get_Count():int:this
cmp eax, r15d
jg G_M6951_IG03
;; size=34 bbWeight=8 PerfScore 84.00
-G_M6951_IG20:
+G_M6951_IG22:
add rbx, 256
xor edi, edi
mov dword ptr [rbx+0x10], edi
;; size=12 bbWeight=1 PerfScore 1.50
-G_M6951_IG21:
+G_M6951_IG23:
mov gword ptr [rbx+0x08], rdi
;; size=4 bbWeight=1 PerfScore 1.00
-G_M6951_IG22:
- add rsp, 296
+G_M6951_IG24:
+ add rsp, 264
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M6951_IG23:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M6951_IG24:
- mov rsi, gword ptr [rbp-0x120]
- mov rdi, rsi
+G_M6951_IG25:
+ mov rdi, r13
xor esi, esi
mov edx, 0x3E8
mov rax, 0xD1FFAB1E ; code for System.String:ThrowSubstringArgumentOutOfRange(int,int):this
call [rax]System.String:ThrowSubstringArgumentOutOfRange(int,int):this
int3
- ;; size=30 bbWeight=0 PerfScore 0.00
-G_M6951_IG25:
- 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
+ ;; size=23 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2106, prolog size 25, PerfScore 4066.00, instruction count 428, allocated bytes for code 2106 (MethodHash=43e1e4d8) for method System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this (FullOpts)
+; Total bytes of code 1926, prolog size 41, PerfScore 6506.08, instruction count 405, allocated bytes for code 1926 (MethodHash=43e1e4d8) for method System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this (FullOpts)
-159 (-9.96 % of base) - System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):this
; Assembly listing for method System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):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; 49 single block inlinees; 10 inlinees without PGO data
+; 0 inlinees with PGO data; 49 single block inlinees; 8 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T10] ( 11, 32.50) ref -> rbx this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
-; V01 arg1 [V01,T58] ( 6, 4.50) ref -> r15 class-hnd single-def <System.Reflection.Emit.TypeBuilderImpl>
-;* V02 loc0 [V02 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.PropertyBuilderImpl]>
-; V03 loc1 [V03,T25] ( 10, 20 ) ref -> r12 class-hnd exact <System.Reflection.Emit.PropertyBuilderImpl>
+; V00 this [V00,T07] ( 11, 40.50) ref -> rbx this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
+; V01 arg1 [V01,T57] ( 6, 4.50) ref -> r15 class-hnd single-def <System.Reflection.Emit.TypeBuilderImpl>
+; V02 loc0 [V02 ] ( 7, 10.50) struct (24) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.PropertyBuilderImpl]>
+; V03 loc1 [V03,T08] ( 11, 40 ) ref -> r15 class-hnd exact <System.Reflection.Emit.PropertyBuilderImpl>
;* V04 loc2 [V04 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Metadata.PropertyDefinitionHandle>
-; V05 loc3 [V05,T66] ( 2, 4 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
-; V06 loc4 [V06,T67] ( 2, 4 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
-; V07 loc5 [V07 ] ( 7, 42 ) struct (24) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.HashSet`1+Enumerator[System.Reflection.MethodInfo]>
-; V08 loc6 [V08,T12] ( 2, 32 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
+; V05 loc3 [V05,T62] ( 2, 4 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
+; V06 loc4 [V06,T63] ( 2, 4 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
+; V07 loc5 [V07 ] ( 7, 42 ) struct (24) [rbp-0x58] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.HashSet`1+Enumerator[System.Reflection.MethodInfo]>
+; V08 loc6 [V08,T14] ( 2, 32 ) ref -> rdi class-hnd exact <System.Reflection.Emit.MethodBuilderImpl>
;# V09 OutArgs [V09 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V10 tmp1 [V10,T50] ( 2, 8 ) ref -> rsi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
+; V10 tmp1 [V10,T27] ( 2, 16 ) ref -> rsi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
;* V11 tmp2 [V11 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
-; V12 tmp3 [V12,T27] ( 4, 14 ) ref -> rdi "ISINST eval op1"
+; V12 tmp3 [V12,T24] ( 4, 22 ) ref -> rdi "ISINST eval op1"
;* V13 tmp4 [V13 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Reflection.Emit.MethodBuilderImpl>
-; V14 tmp5 [V14,T28] ( 4, 14 ) ref -> rdi "ISINST eval op1"
+; V14 tmp5 [V14,T25] ( 4, 22 ) ref -> rdi "ISINST eval op1"
;* V15 tmp6 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Reflection.Emit.MethodBuilderImpl>
;* V16 tmp7 [V16 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V17 tmp8 [V17 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V18 tmp9 [V18 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V19 tmp10 [V19 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V20 tmp11 [V20 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
;* V21 tmp12 [V21 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.TypeDefinitionHandle>
-; V22 tmp13 [V22,T82] ( 2, 2 ) int -> rdx "Inlining Arg"
-; V23 tmp14 [V23,T80] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V22 tmp13 [V22,T72] ( 2, 2 ) int -> rdx "Inlining Arg"
+; V23 tmp14 [V23,T70] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
;* V24 tmp15 [V24 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.PropertyDefinitionHandle>
;* V25 tmp16 [V25 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V26 tmp17 [V26 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.PropertyDefinitionHandle>
;* V27 tmp18 [V27 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V28 tmp19 [V28,T81] ( 2, 2 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
+; V28 tmp19 [V28,T71] ( 2, 2 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
;* V29 tmp20 [V29 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.PropertyBuilderImpl]>
-; V30 tmp21 [V30,T30] ( 3, 12 ) ref -> [rbp-0xB8] class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V31 tmp22 [V31,T55] ( 2, 8 ) int -> [rbp-0x44] spill-single-def "impAppendStmt"
+; V30 tmp21 [V30,T23] ( 3, 24 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V31 tmp22 [V31,T30] ( 2, 16 ) int -> r12 "impAppendStmt"
;* V32 tmp23 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V33 tmp24 [V33,T51] ( 2, 8 ) ref -> [rbp-0xC0] class-hnd spill-single-def "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
+; V33 tmp24 [V33,T28] ( 2, 16 ) ref -> r14 class-hnd "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
;* V34 tmp25 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "impAppendStmt" <System.Reflection.Metadata.StringHandle>
;* V35 tmp26 [V35 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.BlobHandle>
-; V36 tmp27 [V36 ] ( 6, 12 ) struct (16) [rbp-0x58] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow>
-; V37 tmp28 [V37,T16] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow]>
-; V38 tmp29 [V38,T59] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow[]>
-; V39 tmp30 [V39,T36] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V36 tmp27 [V36 ] ( 6, 18 ) struct (16) [rbp-0x68] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow>
+; V37 tmp28 [V37,T05] ( 7, 48 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow]>
+; V38 tmp29 [V38,T39] ( 3, 10 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow[]>
+; V39 tmp30 [V39,T31] ( 4, 12 ) int -> rdx "Inline stloc first use temp"
;* V40 tmp31 [V40 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow>
;* V41 tmp32 [V41 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow]>
;* V42 tmp33 [V42 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V43 tmp34 [V43 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.PropertyDefinitionHandle>
;* V44 tmp35 [V44 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V45 tmp36 [V45 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V46 tmp37 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Reflection.MethodInfo>
;* V47 tmp38 [V47 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V48 tmp39 [V48 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V49 tmp40 [V49 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
-; V50 tmp41 [V50,T37] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V51 tmp42 [V51,T17] ( 7, 28 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V52 tmp43 [V52 ] ( 6, 12 ) struct (16) [rbp-0x68] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
-; V53 tmp44 [V53,T18] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]>
+; V50 tmp41 [V50,T40] ( 4, 8 ) int -> rax "Inline stloc first use temp"
+; V51 tmp42 [V51,T18] ( 7, 28 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V52 tmp43 [V52 ] ( 6, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
+; V53 tmp44 [V53,T19] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]>
;* V54 tmp45 [V54 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
;* V55 tmp46 [V55 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.EntityHandle>
;* V56 tmp47 [V56 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V57 tmp48 [V57,T60] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
-; V58 tmp49 [V58,T38] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V57 tmp48 [V57,T58] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
+; V58 tmp49 [V58,T41] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
;* V59 tmp50 [V59 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
;* V60 tmp51 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Reflection.MethodInfo>
;* V61 tmp52 [V61 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V62 tmp53 [V62 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V63 tmp54 [V63 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
-; V64 tmp55 [V64,T39] ( 4, 8 ) int -> rax "Inline stloc first use temp"
-; V65 tmp56 [V65,T19] ( 7, 28 ) ref -> [rbp-0xD0] class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V66 tmp57 [V66 ] ( 6, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
-; V67 tmp58 [V67,T20] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]>
+; V64 tmp55 [V64,T42] ( 4, 8 ) int -> rax "Inline stloc first use temp"
+; V65 tmp56 [V65,T20] ( 7, 28 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V66 tmp57 [V66 ] ( 6, 12 ) struct (16) [rbp-0x88] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
+; V67 tmp58 [V67,T21] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]>
;* V68 tmp59 [V68 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
-; V69 tmp60 [V69,T61] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
-; V70 tmp61 [V70,T40] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V69 tmp60 [V69,T59] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
+; V70 tmp61 [V70,T43] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
;* V71 tmp62 [V71 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
-; V72 tmp63 [V72,T52] ( 2, 8 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.HashSet`1[System.Reflection.MethodInfo]>
+; V72 tmp63 [V72,T50] ( 2, 8 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.HashSet`1[System.Reflection.MethodInfo]>
;* V73 tmp64 [V73 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.HashSet`1+Enumerator[System.Reflection.MethodInfo]>
;* V74 tmp65 [V74 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V75 tmp66 [V75 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V76 tmp67 [V76 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
; V77 tmp68 [V77,T03] ( 4, 64 ) int -> rax "Inline stloc first use temp"
-; V78 tmp69 [V78,T00] ( 7,224 ) ref -> [rbp-0xD8] class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V79 tmp70 [V79 ] ( 6, 72 ) struct (16) [rbp-0x88] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
+; V78 tmp69 [V78,T00] ( 7,224 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V79 tmp70 [V79 ] ( 6, 72 ) struct (16) [rbp-0x98] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
; V80 tmp71 [V80,T01] ( 7,192 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]>
;* V81 tmp72 [V81 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
-; V82 tmp73 [V82,T09] ( 3, 40 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
-; V83 tmp74 [V83,T05] ( 4, 48 ) int -> rdx "Inline stloc first use temp"
+; V82 tmp73 [V82,T12] ( 3, 40 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow[]>
+; V83 tmp74 [V83,T06] ( 4, 48 ) int -> rdx "Inline stloc first use temp"
;* V84 tmp75 [V84 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow>
;* V85 tmp76 [V85 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V86 tmp77 [V86 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V87 tmp78 [V87,T23] ( 6, 24 ) ref -> r12 class-hnd "Inlining Arg" <System.Object>
+; V87 tmp78 [V87,T22] ( 6, 24 ) ref -> r12 class-hnd "Inlining Arg" <System.Object>
;* V88 tmp79 [V88 ] ( 0, 0 ) struct ( 8) zero-ref "location for address-of(RValue)" <System.Reflection.Metadata.ConstantHandle>
-; V89 tmp80 [V89,T34] ( 5, 10 ) ref -> [rbp-0xE0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
+; V89 tmp80 [V89,T35] ( 5, 10 ) ref -> r15 class-hnd exact "Inline stloc first use temp" <System.RuntimeType>
;* V90 tmp81 [V90 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.RuntimeType>
;* V91 tmp82 [V91 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType[]>
-; V92 tmp83 [V92,T69] ( 2, 4 ) ref -> [rbp-0xE8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V93 tmp84 [V93,T56] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V94 tmp85 [V94 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
-; V95 tmp86 [V95,T29] ( 4, 12.50) ref -> r15 single-def "field V02._list (fldOffset=0x0)" P-INDEP
-; V96 tmp87 [V96,T35] ( 2, 6 ) ref -> r12 "field V02._current (fldOffset=0x8)" P-INDEP
-; V97 tmp88 [V97,T22] ( 6, 20.50) int -> r13 "field V02._index (fldOffset=0x10)" P-INDEP
-; V98 tmp89 [V98,T68] ( 2, 4.50) int -> r14 "field V02._version (fldOffset=0x14)" P-INDEP
-; V99 tmp90 [V99,T70] ( 2, 4 ) int -> rax "field V04._rowId (fldOffset=0x0)" P-INDEP
-; V100 tmp91 [V100 ] ( 3, 20 ) ref -> [rbp-0x40] do-not-enreg[X] addr-exposed "field V07._hashSet (fldOffset=0x0)" P-DEP
-; V101 tmp92 [V101 ] ( 4, 36 ) ref -> [rbp-0x38] do-not-enreg[X] addr-exposed "field V07._current (fldOffset=0x8)" P-DEP
-; V102 tmp93 [V102 ] ( 3, 20 ) int -> [rbp-0x30] do-not-enreg[X] addr-exposed "field V07._version (fldOffset=0x10)" P-DEP
-; V103 tmp94 [V103 ] ( 3, 20 ) int -> [rbp-0x2C] do-not-enreg[X] addr-exposed "field V07._index (fldOffset=0x14)" P-DEP
-;* V104 tmp95 [V104 ] ( 0, 0 ) int -> zero-ref "field V11._vToken (fldOffset=0x0)" P-INDEP
-;* V105 tmp96 [V105 ] ( 0, 0 ) int -> zero-ref "field V16._vToken (fldOffset=0x0)" P-INDEP
-;* V106 tmp97 [V106 ] ( 0, 0 ) int -> zero-ref "field V17._vToken (fldOffset=0x0)" P-INDEP
-;* V107 tmp98 [V107 ] ( 0, 0 ) int -> zero-ref "field V18._vToken (fldOffset=0x0)" P-INDEP
-;* V108 tmp99 [V108 ] ( 0, 0 ) int -> zero-ref "field V19._vToken (fldOffset=0x0)" P-INDEP
-; V109 tmp100 [V109,T86] ( 2, 1 ) int -> rsi "field V21._rowId (fldOffset=0x0)" P-INDEP
-;* V110 tmp101 [V110 ] ( 0, 0 ) int -> zero-ref "field V24._rowId (fldOffset=0x0)" P-INDEP
-; V111 tmp102 [V111,T87] ( 2, 1 ) int -> rdx "field V26._rowId (fldOffset=0x0)" P-INDEP
-; V112 tmp103 [V112,T85] ( 3, 1.50) ref -> r15 single-def "field V29._list (fldOffset=0x0)" P-INDEP
-;* V113 tmp104 [V113 ] ( 0, 0 ) ref -> zero-ref single-def "field V29._current (fldOffset=0x8)" P-INDEP
-;* V114 tmp105 [V114,T89] ( 0, 0 ) int -> zero-ref "field V29._index (fldOffset=0x10)" P-INDEP
-; V115 tmp106 [V115,T88] ( 2, 1 ) int -> r14 "field V29._version (fldOffset=0x14)" P-INDEP
-; V116 tmp107 [V116,T71] ( 2, 4 ) int -> [rbp-0x8C] spill-single-def "field V34._value (fldOffset=0x0)" P-INDEP
-; V117 tmp108 [V117,T72] ( 2, 4 ) int -> rax "field V35._value (fldOffset=0x0)" P-INDEP
-; V118 tmp109 [V118,T41] ( 4, 8 ) ushort -> [rbp-0x58] do-not-enreg[] "field V36.PropFlags (fldOffset=0x0)" P-DEP
-; V119 tmp110 [V119,T42] ( 4, 8 ) int -> [rbp-0x54] do-not-enreg[] "field V36.Name (fldOffset=0x4)" P-DEP
-; V120 tmp111 [V120,T43] ( 4, 8 ) int -> [rbp-0x50] do-not-enreg[] "field V36.Type (fldOffset=0x8)" P-DEP
-;* V121 tmp112 [V121 ] ( 0, 0 ) ushort -> zero-ref "field V40.PropFlags (fldOffset=0x0)" P-INDEP
-;* V122 tmp113 [V122 ] ( 0, 0 ) int -> zero-ref "field V40.Name (fldOffset=0x4)" P-INDEP
-;* V123 tmp114 [V123 ] ( 0, 0 ) int -> zero-ref "field V40.Type (fldOffset=0x8)" P-INDEP
-; V124 tmp115 [V124,T73] ( 2, 4 ) int -> rax "field V43._rowId (fldOffset=0x0)" P-INDEP
-; V125 tmp116 [V125,T74] ( 2, 4 ) int -> rdx "field V44._vToken (fldOffset=0x0)" P-INDEP
-; V126 tmp117 [V126,T65] ( 3, 6 ) int -> [rbp-0x90] spill-single-def "field V47._vToken (fldOffset=0x0)" P-INDEP
-; V127 tmp118 [V127,T75] ( 2, 4 ) int -> [rbp-0x94] spill-single-def "field V49._rowId (fldOffset=0x0)" P-INDEP
-; V128 tmp119 [V128,T44] ( 4, 8 ) ushort -> [rbp-0x68] do-not-enreg[] "field V52.Semantic (fldOffset=0x0)" P-DEP
-; V129 tmp120 [V129,T45] ( 4, 8 ) int -> [rbp-0x64] do-not-enreg[] "field V52.Method (fldOffset=0x4)" P-DEP
-; V130 tmp121 [V130,T46] ( 4, 8 ) int -> [rbp-0x60] do-not-enreg[] "field V52.Association (fldOffset=0x8)" P-DEP
-;* V131 tmp122 [V131 ] ( 0, 0 ) int -> zero-ref "field V54._rowId (fldOffset=0x0)" P-INDEP
-;* V132 tmp123 [V132 ] ( 0, 0 ) int -> zero-ref "field V55._vToken (fldOffset=0x0)" P-INDEP
-;* V133 tmp124 [V133 ] ( 0, 0 ) ushort -> zero-ref "field V59.Semantic (fldOffset=0x0)" P-INDEP
-;* V134 tmp125 [V134 ] ( 0, 0 ) int -> zero-ref "field V59.Method (fldOffset=0x4)" P-INDEP
-;* V135 tmp126 [V135 ] ( 0, 0 ) int -> zero-ref "field V59.Association (fldOffset=0x8)" P-INDEP
-; V136 tmp127 [V136,T76] ( 2, 4 ) int -> rcx "field V61._vToken (fldOffset=0x0)" P-INDEP
-; V137 tmp128 [V137,T77] ( 2, 4 ) int -> [rbp-0x98] spill-single-def "field V63._rowId (fldOffset=0x0)" P-INDEP
-; V138 tmp129 [V138,T47] ( 4, 8 ) ushort -> [rbp-0x78] do-not-enreg[] "field V66.Semantic (fldOffset=0x0)" P-DEP
-; V139 tmp130 [V139,T48] ( 4, 8 ) int -> [rbp-0x74] do-not-enreg[] "field V66.Method (fldOffset=0x4)" P-DEP
-; V140 tmp131 [V140,T49] ( 4, 8 ) int -> [rbp-0x70] do-not-enreg[] "field V66.Association (fldOffset=0x8)" P-DEP
-;* V141 tmp132 [V141 ] ( 0, 0 ) int -> zero-ref "field V68._rowId (fldOffset=0x0)" P-INDEP
-;* V142 tmp133 [V142 ] ( 0, 0 ) ushort -> zero-ref "field V71.Semantic (fldOffset=0x0)" P-INDEP
-;* V143 tmp134 [V143 ] ( 0, 0 ) int -> zero-ref "field V71.Method (fldOffset=0x4)" P-INDEP
-;* V144 tmp135 [V144 ] ( 0, 0 ) int -> zero-ref "field V71.Association (fldOffset=0x8)" P-INDEP
-; V145 tmp136 [V145,T62] ( 3, 6 ) ref -> rdi "field V73._hashSet (fldOffset=0x0)" P-INDEP
-;* V146 tmp137 [V146,T83] ( 0, 0 ) ref -> zero-ref "field V73._current (fldOffset=0x8)" P-INDEP
-; V147 tmp138 [V147,T78] ( 2, 4 ) int -> rsi "field V73._version (fldOffset=0x10)" P-INDEP
-;* V148 tmp139 [V148,T84] ( 0, 0 ) int -> zero-ref "field V73._index (fldOffset=0x14)" P-INDEP
-; V149 tmp140 [V149,T13] ( 2, 32 ) int -> rax "field V74._vToken (fldOffset=0x0)" P-INDEP
-; V150 tmp141 [V150,T14] ( 2, 32 ) int -> [rbp-0x9C] spill-single-def "field V76._rowId (fldOffset=0x0)" P-INDEP
-; V151 tmp142 [V151,T06] ( 4, 40 ) ushort -> [rbp-0x88] do-not-enreg[] "field V79.Semantic (fldOffset=0x0)" P-DEP
-; V152 tmp143 [V152,T07] ( 4, 40 ) int -> [rbp-0x84] do-not-enreg[] "field V79.Method (fldOffset=0x4)" P-DEP
-; V153 tmp144 [V153,T08] ( 4, 40 ) int -> [rbp-0x80] do-not-enreg[] "field V79.Association (fldOffset=0x8)" P-DEP
-;* V154 tmp145 [V154 ] ( 0, 0 ) int -> zero-ref "field V81._rowId (fldOffset=0x0)" P-INDEP
-;* V155 tmp146 [V155 ] ( 0, 0 ) ushort -> zero-ref "field V84.Semantic (fldOffset=0x0)" P-INDEP
-;* V156 tmp147 [V156 ] ( 0, 0 ) int -> zero-ref "field V84.Method (fldOffset=0x4)" P-INDEP
-;* V157 tmp148 [V157 ] ( 0, 0 ) int -> zero-ref "field V84.Association (fldOffset=0x8)" P-INDEP
-; V158 tmp149 [V158,T79] ( 2, 4 ) int -> [rbp-0xA0] spill-single-def "field V85._vToken (fldOffset=0x0)" P-INDEP
-;* V159 tmp150 [V159 ] ( 0, 0 ) int -> zero-ref "field V88._rowId (fldOffset=0x0)" P-INDEP
-; V160 tmp151 [V160,T24] ( 3, 24 ) ref -> rdi "arr expr"
-; V161 tmp152 [V161,T31] ( 3, 12 ) ref -> [rbp-0xF0] spill-single-def "arr expr"
-; V162 tmp153 [V162,T32] ( 3, 12 ) int -> rax "index expr"
-; V163 tmp154 [V163,T53] ( 2, 8 ) ref -> rdx "argument with side effect"
-; V164 cse0 [V164,T57] ( 2, 8 ) int -> rdi "CSE #11: moderate"
-; V165 cse1 [V165,T33] ( 2, 8 ) int -> rdi "CSE #12: moderate"
-; V166 cse2 [V166,T63] ( 3, 6 ) ref -> rdi "CSE #01: conservative"
-; V167 cse3 [V167,T64] ( 3, 6 ) ref -> rdi "CSE #07: conservative"
-; V168 cse4 [V168,T21] ( 6, 26 ) int -> [rbp-0xA4] "CSE #03: moderate"
-; V169 cse5 [V169,T26] ( 3, 20 ) long -> [rbp-0xB0] spill-single-def "CSE #09: moderate"
-; V170 cse6 [V170,T15] ( 2, 32 ) int -> rax "CSE #08: aggressive"
-; V171 rat0 [V171,T04] ( 3, 64 ) ref -> rsi "Spilling to split statement for tree"
-; V172 rat1 [V172,T02] ( 4,112 ) ref -> rdi "replacement local"
-; V173 rat2 [V173,T11] ( 3, 32 ) long -> rax "CSE for expectedClsNode"
-; V174 rat3 [V174,T54] ( 2, 8 ) ref -> [rbp-0xF8] spill-single-def "Spilling to split statement for tree"
+; V92 tmp83 [V92,T64] ( 2, 4 ) ref -> r13 class-hnd exact "Inline stloc first use temp" <System.RuntimeType>
+; V93 tmp84 [V93 ] ( 3, 5 ) ref -> [rbp-0x40] do-not-enreg[X] addr-exposed "field V02._list (fldOffset=0x0)" P-DEP
+; V94 tmp85 [V94 ] ( 4, 9 ) ref -> [rbp-0x38] do-not-enreg[X] addr-exposed "field V02._current (fldOffset=0x8)" P-DEP
+; V95 tmp86 [V95 ] ( 3, 5 ) int -> [rbp-0x30] do-not-enreg[X] addr-exposed "field V02._index (fldOffset=0x10)" P-DEP
+; V96 tmp87 [V96 ] ( 3, 5 ) int -> [rbp-0x2C] do-not-enreg[X] addr-exposed "field V02._version (fldOffset=0x14)" P-DEP
+; V97 tmp88 [V97,T52] ( 2, 8 ) int -> r14 "field V04._rowId (fldOffset=0x0)" P-INDEP
+; V98 tmp89 [V98 ] ( 3, 20 ) ref -> [rbp-0x58] do-not-enreg[X] addr-exposed "field V07._hashSet (fldOffset=0x0)" P-DEP
+; V99 tmp90 [V99 ] ( 4, 36 ) ref -> [rbp-0x50] do-not-enreg[X] addr-exposed "field V07._current (fldOffset=0x8)" P-DEP
+; V100 tmp91 [V100 ] ( 3, 20 ) int -> [rbp-0x48] do-not-enreg[X] addr-exposed "field V07._version (fldOffset=0x10)" P-DEP
+; V101 tmp92 [V101 ] ( 3, 20 ) int -> [rbp-0x44] do-not-enreg[X] addr-exposed "field V07._index (fldOffset=0x14)" P-DEP
+;* V102 tmp93 [V102 ] ( 0, 0 ) int -> zero-ref "field V11._vToken (fldOffset=0x0)" P-INDEP
+;* V103 tmp94 [V103 ] ( 0, 0 ) int -> zero-ref "field V16._vToken (fldOffset=0x0)" P-INDEP
+;* V104 tmp95 [V104 ] ( 0, 0 ) int -> zero-ref "field V17._vToken (fldOffset=0x0)" P-INDEP
+;* V105 tmp96 [V105 ] ( 0, 0 ) int -> zero-ref "field V18._vToken (fldOffset=0x0)" P-INDEP
+;* V106 tmp97 [V106 ] ( 0, 0 ) int -> zero-ref "field V19._vToken (fldOffset=0x0)" P-INDEP
+; V107 tmp98 [V107,T76] ( 2, 1 ) int -> rsi "field V21._rowId (fldOffset=0x0)" P-INDEP
+;* V108 tmp99 [V108 ] ( 0, 0 ) int -> zero-ref "field V24._rowId (fldOffset=0x0)" P-INDEP
+; V109 tmp100 [V109,T77] ( 2, 1 ) int -> rdx "field V26._rowId (fldOffset=0x0)" P-INDEP
+; V110 tmp101 [V110,T75] ( 3, 1.50) ref -> rdi single-def "field V29._list (fldOffset=0x0)" P-INDEP
+;* V111 tmp102 [V111,T79] ( 0, 0 ) ref -> zero-ref single-def "field V29._current (fldOffset=0x8)" P-INDEP
+;* V112 tmp103 [V112,T80] ( 0, 0 ) int -> zero-ref "field V29._index (fldOffset=0x10)" P-INDEP
+; V113 tmp104 [V113,T78] ( 2, 1 ) int -> rsi "field V29._version (fldOffset=0x14)" P-INDEP
+; V114 tmp105 [V114,T53] ( 2, 8 ) int -> [rbp-0x9C] spill-single-def "field V34._value (fldOffset=0x0)" P-INDEP
+; V115 tmp106 [V115,T54] ( 2, 8 ) int -> rax "field V35._value (fldOffset=0x0)" P-INDEP
+; V116 tmp107 [V116,T36] ( 4, 10 ) ushort -> [rbp-0x68] do-not-enreg[] "field V36.PropFlags (fldOffset=0x0)" P-DEP
+; V117 tmp108 [V117,T37] ( 4, 10 ) int -> [rbp-0x64] do-not-enreg[] "field V36.Name (fldOffset=0x4)" P-DEP
+; V118 tmp109 [V118,T38] ( 4, 10 ) int -> [rbp-0x60] do-not-enreg[] "field V36.Type (fldOffset=0x8)" P-DEP
+;* V119 tmp110 [V119 ] ( 0, 0 ) ushort -> zero-ref "field V40.PropFlags (fldOffset=0x0)" P-INDEP
+;* V120 tmp111 [V120 ] ( 0, 0 ) int -> zero-ref "field V40.Name (fldOffset=0x4)" P-INDEP
+;* V121 tmp112 [V121 ] ( 0, 0 ) int -> zero-ref "field V40.Type (fldOffset=0x8)" P-INDEP
+; V122 tmp113 [V122,T55] ( 2, 8 ) int -> r14 "field V43._rowId (fldOffset=0x0)" P-INDEP
+; V123 tmp114 [V123,T56] ( 2, 8 ) int -> rdx "field V44._vToken (fldOffset=0x0)" P-INDEP
+; V124 tmp115 [V124,T61] ( 3, 6 ) int -> r13 "field V47._vToken (fldOffset=0x0)" P-INDEP
+; V125 tmp116 [V125,T65] ( 2, 4 ) int -> r12 "field V49._rowId (fldOffset=0x0)" P-INDEP
+; V126 tmp117 [V126,T44] ( 4, 8 ) ushort -> [rbp-0x78] do-not-enreg[] "field V52.Semantic (fldOffset=0x0)" P-DEP
+; V127 tmp118 [V127,T45] ( 4, 8 ) int -> [rbp-0x74] do-not-enreg[] "field V52.Method (fldOffset=0x4)" P-DEP
+; V128 tmp119 [V128,T46] ( 4, 8 ) int -> [rbp-0x70] do-not-enreg[] "field V52.Association (fldOffset=0x8)" P-DEP
+;* V129 tmp120 [V129 ] ( 0, 0 ) int -> zero-ref "field V54._rowId (fldOffset=0x0)" P-INDEP
+;* V130 tmp121 [V130 ] ( 0, 0 ) int -> zero-ref "field V55._vToken (fldOffset=0x0)" P-INDEP
+;* V131 tmp122 [V131 ] ( 0, 0 ) ushort -> zero-ref "field V59.Semantic (fldOffset=0x0)" P-INDEP
+;* V132 tmp123 [V132 ] ( 0, 0 ) int -> zero-ref "field V59.Method (fldOffset=0x4)" P-INDEP
+;* V133 tmp124 [V133 ] ( 0, 0 ) int -> zero-ref "field V59.Association (fldOffset=0x8)" P-INDEP
+; V134 tmp125 [V134,T66] ( 2, 4 ) int -> rax "field V61._vToken (fldOffset=0x0)" P-INDEP
+; V135 tmp126 [V135,T67] ( 2, 4 ) int -> r13 "field V63._rowId (fldOffset=0x0)" P-INDEP
+; V136 tmp127 [V136,T47] ( 4, 8 ) ushort -> [rbp-0x88] do-not-enreg[] "field V66.Semantic (fldOffset=0x0)" P-DEP
+; V137 tmp128 [V137,T48] ( 4, 8 ) int -> [rbp-0x84] do-not-enreg[] "field V66.Method (fldOffset=0x4)" P-DEP
+; V138 tmp129 [V138,T49] ( 4, 8 ) int -> [rbp-0x80] do-not-enreg[] "field V66.Association (fldOffset=0x8)" P-DEP
+;* V139 tmp130 [V139 ] ( 0, 0 ) int -> zero-ref "field V68._rowId (fldOffset=0x0)" P-INDEP
+;* V140 tmp131 [V140 ] ( 0, 0 ) ushort -> zero-ref "field V71.Semantic (fldOffset=0x0)" P-INDEP
+;* V141 tmp132 [V141 ] ( 0, 0 ) int -> zero-ref "field V71.Method (fldOffset=0x4)" P-INDEP
+;* V142 tmp133 [V142 ] ( 0, 0 ) int -> zero-ref "field V71.Association (fldOffset=0x8)" P-INDEP
+; V143 tmp134 [V143,T60] ( 3, 6 ) ref -> rdi "field V73._hashSet (fldOffset=0x0)" P-INDEP
+;* V144 tmp135 [V144,T73] ( 0, 0 ) ref -> zero-ref "field V73._current (fldOffset=0x8)" P-INDEP
+; V145 tmp136 [V145,T68] ( 2, 4 ) int -> rsi "field V73._version (fldOffset=0x10)" P-INDEP
+;* V146 tmp137 [V146,T74] ( 0, 0 ) int -> zero-ref "field V73._index (fldOffset=0x14)" P-INDEP
+; V147 tmp138 [V147,T15] ( 2, 32 ) int -> rax "field V74._vToken (fldOffset=0x0)" P-INDEP
+; V148 tmp139 [V148,T16] ( 2, 32 ) int -> r12 "field V76._rowId (fldOffset=0x0)" P-INDEP
+; V149 tmp140 [V149,T09] ( 4, 40 ) ushort -> [rbp-0x98] do-not-enreg[] "field V79.Semantic (fldOffset=0x0)" P-DEP
+; V150 tmp141 [V150,T10] ( 4, 40 ) int -> [rbp-0x94] do-not-enreg[] "field V79.Method (fldOffset=0x4)" P-DEP
+; V151 tmp142 [V151,T11] ( 4, 40 ) int -> [rbp-0x90] do-not-enreg[] "field V79.Association (fldOffset=0x8)" P-DEP
+;* V152 tmp143 [V152 ] ( 0, 0 ) int -> zero-ref "field V81._rowId (fldOffset=0x0)" P-INDEP
+;* V153 tmp144 [V153 ] ( 0, 0 ) ushort -> zero-ref "field V84.Semantic (fldOffset=0x0)" P-INDEP
+;* V154 tmp145 [V154 ] ( 0, 0 ) int -> zero-ref "field V84.Method (fldOffset=0x4)" P-INDEP
+;* V155 tmp146 [V155 ] ( 0, 0 ) int -> zero-ref "field V84.Association (fldOffset=0x8)" P-INDEP
+; V156 tmp147 [V156,T69] ( 2, 4 ) int -> r14 "field V85._vToken (fldOffset=0x0)" P-INDEP
+;* V157 tmp148 [V157 ] ( 0, 0 ) int -> zero-ref "field V88._rowId (fldOffset=0x0)" P-INDEP
+; V158 tmp149 [V158,T32] ( 3, 12 ) ref -> r13 "arr expr"
+; V159 tmp150 [V159,T34] ( 3, 12 ) int -> rax "index expr"
+; V160 tmp151 [V160,T51] ( 2, 8 ) ref -> rdx "argument with side effect"
+; V161 cse0 [V161,T33] ( 3, 12 ) ref -> rdi "CSE #01: conservative"
+; V162 cse1 [V162,T17] ( 6, 30 ) int -> r14 "CSE #03: moderate"
+; V163 cse2 [V163,T26] ( 3, 20 ) long -> r13 "CSE #09: moderate"
+; V164 rat0 [V164,T04] ( 3, 64 ) ref -> rsi "Spilling to split statement for tree"
+; V165 rat1 [V165,T02] ( 4,112 ) ref -> rdi "replacement local"
+; V166 rat2 [V166,T13] ( 3, 32 ) long -> rax "CSE for expectedClsNode"
+; V167 rat3 [V167,T29] ( 2, 16 ) ref -> r13 "Spilling to split statement for tree"
;
-; Lcl frame size = 216
+; Lcl frame size = 136
G_M2787_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 216
- lea rbp, [rsp+0x100]
- vxorps xmm8, xmm8, xmm8
- vmovdqa xmmword ptr [rbp-0x40], xmm8
+ sub rsp, 136
+ lea rbp, [rsp+0xB0]
xor eax, eax
+ mov qword ptr [rbp-0x58], rax
+ vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0x50], ymm8
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r15, rsi
- ;; size=47 bbWeight=1 PerfScore 10.83
+ ;; size=51 bbWeight=1 PerfScore 11.83
G_M2787_IG02:
mov rdi, gword ptr [r15+0x68]
cmp dword ptr [rdi+0x10], 0
jne SHORT G_M2787_IG04
;; size=10 bbWeight=1 PerfScore 6.00
G_M2787_IG03:
- add rsp, 216
+ add rsp, 136
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
G_M2787_IG04:
mov esi, dword ptr [r15+0xA8]
mov edx, dword ptr [r15+0x9C]
mov rdi, gword ptr [rbx+0x18]
and edx, 0xD1FFAB1E
mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddPropertyMap(System.Reflection.Metadata.TypeDefinitionHandle,System.Reflection.Metadata.PropertyDefinitionHandle):this
cmp dword ptr [rdi], edi
call [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddPropertyMap(System.Reflection.Metadata.TypeDefinitionHandle,System.Reflection.Metadata.PropertyDefinitionHandle):this
- mov r15, gword ptr [r15+0x68]
- mov r14d, dword ptr [r15+0x14]
- xor r13d, r13d
- jmp G_M2787_IG27
- ;; size=54 bbWeight=0.50 PerfScore 9.38
+ mov rdi, gword ptr [r15+0x68]
+ mov esi, dword ptr [rdi+0x14]
+ mov gword ptr [rbp-0x40], rdi
+ xor rdi, rdi
+ mov gword ptr [rbp-0x38], rdi
+ ;; size=55 bbWeight=0.50 PerfScore 9.38
G_M2787_IG05:
- mov rdi, r12
+ mov dword ptr [rbp-0x30], edi
+ mov dword ptr [rbp-0x2C], esi
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.PropertyBuilderImpl]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ je SHORT G_M2787_IG03
+ ;; size=36 bbWeight=0.50 PerfScore 3.62
+G_M2787_IG06:
+ mov r15, gword ptr [rbp-0x38]
+ mov rdi, r15
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Reflection.Emit.MetadataSignatureHelper:GetPropertySignature(System.Reflection.Emit.PropertyBuilderImpl,System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
call [rax]System.Reflection.Emit.MetadataSignatureHelper:GetPropertySignature(System.Reflection.Emit.PropertyBuilderImpl,System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
- mov gword ptr [rbp-0xC0], rax
+ mov r14, rax
mov rdi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0xB8], rdi
- mov edx, dword ptr [r12+0x74]
- mov dword ptr [rbp-0x44], edx
- mov rsi, gword ptr [r12+0x08]
- mov r8, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
+ mov r13, rdi
+ mov r12d, dword ptr [r15+0x74]
+ mov rsi, gword ptr [r15+0x08]
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
cmp dword ptr [rdi], edi
- call [r8]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
- mov dword ptr [rbp-0x8C], eax
+ call [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
+ mov dword ptr [rbp-0x9C], eax
mov rdi, gword ptr [rbx+0x18]
- mov rsi, gword ptr [rbp-0xC0]
+ mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
cmp dword ptr [rdi], edi
call [rcx]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
- mov rcx, gword ptr [rbp-0xB8]
- mov rdi, gword ptr [rcx+0xE8]
- movzx rsi, word ptr [rbp-0x44]
- mov word ptr [rbp-0x58], si
- mov esi, dword ptr [rbp-0x8C]
- mov dword ptr [rbp-0x54], esi
- mov dword ptr [rbp-0x50], eax
+ mov rdi, gword ptr [r13+0xE8]
+ movzx rsi, r12w
+ mov word ptr [rbp-0x68], si
+ mov r14d, dword ptr [rbp-0x9C]
+ mov dword ptr [rbp-0x64], r14d
+ mov dword ptr [rbp-0x60], eax
inc dword ptr [rdi+0x14]
mov rsi, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
cmp dword ptr [rsi+0x08], edx
- jbe SHORT G_M2787_IG06
+ jbe SHORT G_M2787_IG08
+ ;; size=125 bbWeight=4 PerfScore 177.00
+G_M2787_IG07:
lea eax, [rdx+0x01]
mov dword ptr [rdi+0x10], eax
+ mov edx, edx
lea rdx, [rdx+2*rdx]
- mov rdi, qword ptr [rbp-0x58]
+ mov rdi, qword ptr [rbp-0x68]
mov qword ptr [rsi+4*rdx+0x10], rdi
- mov edi, dword ptr [rbp-0x50]
+ mov edi, dword ptr [rbp-0x60]
mov dword ptr [rsi+4*rdx+0x18], edi
- jmp SHORT G_M2787_IG07
- ;; size=172 bbWeight=2 PerfScore 112.50
-G_M2787_IG06:
- mov rsi, qword ptr [rbp-0x58]
- mov edx, dword ptr [rbp-0x50]
+ jmp SHORT G_M2787_IG09
+ ;; size=30 bbWeight=2 PerfScore 16.50
+G_M2787_IG08:
+ mov rsi, qword ptr [rbp-0x68]
+ mov edx, dword ptr [rbp-0x60]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+PropertyRow):this
;; size=19 bbWeight=2 PerfScore 10.50
-G_M2787_IG07:
- mov rcx, gword ptr [rbp-0xB8]
- mov rdi, gword ptr [rcx+0xE8]
- mov eax, dword ptr [rdi+0x10]
- mov rsi, gword ptr [r12+0x60]
- or eax, 0xD1FFAB1E
- mov dword ptr [rbp-0xA4], eax
- mov edx, eax
+G_M2787_IG09:
+ mov rdi, gword ptr [r13+0xE8]
+ mov r14d, dword ptr [rdi+0x10]
+ mov rsi, gword ptr [r15+0x60]
+ or r14d, 0xD1FFAB1E
+ mov edx, r14d
mov rdi, rbx
- mov rcx, 0xD1FFAB1E ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
- call [rcx]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
- mov rdi, gword ptr [r12+0x28]
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
+ call [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
+ mov rdi, gword ptr [r15+0x28]
test rdi, rdi
- je G_M2787_IG11
- ;; size=64 bbWeight=2 PerfScore 30.50
-G_M2787_IG08:
+ je G_M2787_IG13
+ ;; size=53 bbWeight=4 PerfScore 53.00
+G_M2787_IG10:
mov rax, 0xD1FFAB1E ; System.Reflection.Emit.MethodBuilderImpl
cmp qword ptr [rdi], rax
- jne G_M2787_IG11
+ jne G_M2787_IG13
;; size=19 bbWeight=1 PerfScore 4.25
-G_M2787_IG09:
- mov eax, dword ptr [rbp-0xA4]
- mov ecx, eax
- mov dword ptr [rbp-0x90], ecx
- mov edx, dword ptr [rdi+0x88]
- mov dword ptr [rbp-0x94], edx
- mov rsi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0xC8], rsi
- cmp byte ptr [rsi], sil
- mov edi, ecx
+G_M2787_IG11:
+ mov r13d, r14d
+ mov r12d, dword ptr [rdi+0x88]
+ mov rax, gword ptr [rbx+0x18]
+ mov gword ptr [rbp-0xA8], rax
+ cmp byte ptr [rax], al
+ mov edi, r13d
and edi, 0xD1FFAB1E
shr edi, 24
movzx rdi, dil
- mov r8, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:ToHasSemanticsTag(ubyte):int
- call [r8]System.Reflection.Metadata.Ecma335.CodedIndex:ToHasSemanticsTag(ubyte):int
- mov esi, dword ptr [rbp-0x90]
- and esi, 0xD1FFAB1E
- add esi, esi
- or esi, eax
- mov rdx, gword ptr [rbp-0xC8]
- cmp esi, dword ptr [rdx+0x190]
- setl dil
- movzx rdi, dil
- or byte ptr [rdx+0x1AC], dil
- mov dword ptr [rdx+0x190], esi
- mov rdi, gword ptr [rdx+0xB0]
- mov dword ptr [rbp-0x60], esi
- mov esi, dword ptr [rbp-0x94]
- mov dword ptr [rbp-0x64], esi
- mov word ptr [rbp-0x68], 2
+ mov rcx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:ToHasSemanticsTag(ubyte):int
+ call [rcx]System.Reflection.Metadata.Ecma335.CodedIndex:ToHasSemanticsTag(ubyte):int
+ and r13d, 0xD1FFAB1E
+ add r13d, r13d
+ or eax, r13d
+ mov r13, gword ptr [rbp-0xA8]
+ cmp eax, dword ptr [r13+0x190]
+ setl sil
+ movzx rsi, sil
+ or byte ptr [r13+0x1AC], sil
+ mov dword ptr [r13+0x190], eax
+ mov rdi, gword ptr [r13+0xB0]
+ mov dword ptr [rbp-0x70], eax
+ mov dword ptr [rbp-0x74], r12d
+ mov word ptr [rbp-0x78], 2
inc dword ptr [rdi+0x14]
mov rsi, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
cmp dword ptr [rsi+0x08], edx
- jbe SHORT G_M2787_IG10
+ jbe SHORT G_M2787_IG12
lea eax, [rdx+0x01]
mov dword ptr [rdi+0x10], eax
lea rdx, [rdx+2*rdx]
- mov rdi, qword ptr [rbp-0x68]
+ mov rdi, qword ptr [rbp-0x78]
mov qword ptr [rsi+4*rdx+0x10], rdi
- mov edi, dword ptr [rbp-0x60]
+ mov edi, dword ptr [rbp-0x70]
mov dword ptr [rsi+4*rdx+0x18], edi
- jmp SHORT G_M2787_IG11
- ;; size=186 bbWeight=2 PerfScore 103.50
-G_M2787_IG10:
- mov rsi, qword ptr [rbp-0x68]
- mov edx, dword ptr [rbp-0x60]
+ jmp SHORT G_M2787_IG13
+ ;; size=163 bbWeight=2 PerfScore 93.50
+G_M2787_IG12:
+ mov rsi, qword ptr [rbp-0x78]
+ mov edx, dword ptr [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
;; size=19 bbWeight=2 PerfScore 10.50
-G_M2787_IG11:
- mov rdi, gword ptr [r12+0x30]
+G_M2787_IG13:
+ mov rdi, gword ptr [r15+0x30]
test rdi, rdi
- je G_M2787_IG15
- ;; size=14 bbWeight=2 PerfScore 6.50
-G_M2787_IG12:
+ je G_M2787_IG17
+ ;; size=13 bbWeight=4 PerfScore 13.00
+G_M2787_IG14:
mov rax, 0xD1FFAB1E ; System.Reflection.Emit.MethodBuilderImpl
cmp qword ptr [rdi], rax
- jne G_M2787_IG15
+ jne G_M2787_IG17
;; size=19 bbWeight=1 PerfScore 4.25
-G_M2787_IG13:
- mov eax, dword ptr [rbp-0xA4]
- mov ecx, eax
- mov edx, dword ptr [rdi+0x88]
- mov dword ptr [rbp-0x98], edx
- mov rsi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0xD0], rsi
- cmp byte ptr [rsi], sil
- mov edi, ecx
- mov rcx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
- call [rcx]System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
- mov rsi, gword ptr [rbp-0xD0]
- cmp eax, dword ptr [rsi+0x190]
- setl dl
- movzx rdx, dl
- or byte ptr [rsi+0x1AC], dl
- mov dword ptr [rsi+0x190], eax
- mov rdi, gword ptr [rsi+0xB0]
- mov dword ptr [rbp-0x70], eax
- mov esi, dword ptr [rbp-0x98]
- mov dword ptr [rbp-0x74], esi
- mov word ptr [rbp-0x78], 1
+G_M2787_IG15:
+ mov eax, r14d
+ mov r13d, dword ptr [rdi+0x88]
+ mov r12, gword ptr [rbx+0x18]
+ cmp byte ptr [r12], r12b
+ mov edi, eax
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
+ call [rax]System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
+ cmp eax, dword ptr [r12+0x190]
+ setl sil
+ movzx rsi, sil
+ or byte ptr [r12+0x1AC], sil
+ mov dword ptr [r12+0x190], eax
+ mov rdi, gword ptr [r12+0xB0]
+ mov dword ptr [rbp-0x80], eax
+ mov dword ptr [rbp-0x84], r13d
+ mov word ptr [rbp-0x88], 1
inc dword ptr [rdi+0x14]
mov rsi, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
cmp dword ptr [rsi+0x08], edx
- jbe SHORT G_M2787_IG14
+ jbe SHORT G_M2787_IG16
lea eax, [rdx+0x01]
mov dword ptr [rdi+0x10], eax
lea rdx, [rdx+2*rdx]
- mov rdi, qword ptr [rbp-0x78]
+ mov rdi, qword ptr [rbp-0x88]
mov qword ptr [rsi+4*rdx+0x10], rdi
- mov edi, dword ptr [rbp-0x70]
+ mov edi, dword ptr [rbp-0x80]
mov dword ptr [rsi+4*rdx+0x18], edi
- jmp SHORT G_M2787_IG15
- ;; size=147 bbWeight=2 PerfScore 96.00
-G_M2787_IG14:
- mov rsi, qword ptr [rbp-0x78]
- mov edx, dword ptr [rbp-0x70]
+ jmp SHORT G_M2787_IG17
+ ;; size=137 bbWeight=2 PerfScore 86.00
+G_M2787_IG16:
+ mov rsi, qword ptr [rbp-0x88]
+ mov edx, dword ptr [rbp-0x80]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
- ;; size=19 bbWeight=2 PerfScore 10.50
-G_M2787_IG15:
- mov rdi, gword ptr [r12+0x38]
- test rdi, rdi
- je G_M2787_IG23
+ ;; size=22 bbWeight=2 PerfScore 10.50
+G_M2787_IG17:
+ cmp gword ptr [r15+0x38], 0
+ je G_M2787_IG26
+ ;; size=11 bbWeight=4 PerfScore 16.00
+G_M2787_IG18:
+ mov rdi, gword ptr [r15+0x38]
mov esi, dword ptr [rdi+0x34]
- mov gword ptr [rbp-0x40], rdi
+ mov gword ptr [rbp-0x58], rdi
xor rdi, rdi
- mov gword ptr [rbp-0x38], rdi
- mov dword ptr [rbp-0x30], esi
- ;; size=30 bbWeight=2 PerfScore 17.00
-G_M2787_IG16:
- mov dword ptr [rbp-0x2C], edi
- lea rdi, [rbp-0x40]
- mov rax, 0xD1FFAB1E ; System.Collections.Generic.HashSet`1+Enumerator[System.Reflection.MethodInfo]
- mov qword ptr [rbp-0xB0], rax
- mov rsi, rax
- mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
- call [rcx]System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ mov gword ptr [rbp-0x50], rdi
+ mov dword ptr [rbp-0x48], esi
+ ;; size=20 bbWeight=2 PerfScore 14.50
+G_M2787_IG19:
+ mov dword ptr [rbp-0x44], edi
+ lea rdi, [rbp-0x58]
+ mov r13, 0xD1FFAB1E ; System.Collections.Generic.HashSet`1+Enumerator[System.Reflection.MethodInfo]
+ mov rsi, r13
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
test eax, eax
- je G_M2787_IG23
- ;; size=47 bbWeight=2 PerfScore 15.00
-G_M2787_IG17:
- mov rsi, gword ptr [rbp-0x38]
+ je G_M2787_IG26
+ ;; size=40 bbWeight=2 PerfScore 13.00
+G_M2787_IG20:
+ mov rsi, gword ptr [rbp-0x50]
mov rdi, rsi
test rdi, rdi
- je SHORT G_M2787_IG19
+ je SHORT G_M2787_IG22
;; size=12 bbWeight=16 PerfScore 40.00
-G_M2787_IG18:
+G_M2787_IG21:
mov rax, 0xD1FFAB1E ; System.Reflection.Emit.MethodBuilderImpl
cmp qword ptr [rdi], rax
- jne G_M2787_IG31
+ jne G_M2787_IG33
;; size=19 bbWeight=8 PerfScore 34.00
-G_M2787_IG19:
- mov ecx, dword ptr [rbp-0xA4]
- mov eax, ecx
- mov edx, dword ptr [rdi+0x88]
- mov dword ptr [rbp-0x9C], edx
- mov rsi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0xD8], rsi
- cmp byte ptr [rsi], sil
+G_M2787_IG22:
+ mov eax, r14d
+ mov r12d, dword ptr [rdi+0x88]
+ mov rcx, gword ptr [rbx+0x18]
+ mov gword ptr [rbp-0xB0], rcx
+ cmp byte ptr [rcx], cl
mov edi, eax
mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
call [rax]System.Reflection.Metadata.Ecma335.CodedIndex:HasSemantics(System.Reflection.Metadata.EntityHandle):int
- mov rsi, gword ptr [rbp-0xD8]
+ mov rsi, gword ptr [rbp-0xB0]
cmp eax, dword ptr [rsi+0x190]
setl dl
movzx rdx, dl
or byte ptr [rsi+0x1AC], dl
mov dword ptr [rsi+0x190], eax
mov rdi, gword ptr [rsi+0xB0]
- mov dword ptr [rbp-0x80], eax
- mov esi, dword ptr [rbp-0x9C]
- mov dword ptr [rbp-0x84], esi
- mov word ptr [rbp-0x88], 4
+ mov dword ptr [rbp-0x90], eax
+ mov dword ptr [rbp-0x94], r12d
+ mov word ptr [rbp-0x98], 4
inc dword ptr [rdi+0x14]
mov rsi, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
- mov eax, dword ptr [rsi+0x08]
- cmp eax, edx
- jbe SHORT G_M2787_IG21
- ;; size=127 bbWeight=16 PerfScore 628.00
-G_M2787_IG20:
+ cmp dword ptr [rsi+0x08], edx
+ jbe SHORT G_M2787_IG24
+ ;; size=112 bbWeight=16 PerfScore 592.00
+G_M2787_IG23:
lea eax, [rdx+0x01]
mov dword ptr [rdi+0x10], eax
mov edx, edx
lea rdx, [rdx+2*rdx]
- mov rdi, qword ptr [rbp-0x88]
+ mov rdi, qword ptr [rbp-0x98]
mov qword ptr [rsi+4*rdx+0x10], rdi
- mov edi, dword ptr [rbp-0x80]
+ mov edi, dword ptr [rbp-0x90]
mov dword ptr [rsi+4*rdx+0x18], edi
- jmp SHORT G_M2787_IG22
- ;; size=33 bbWeight=8 PerfScore 66.00
-G_M2787_IG21:
- mov rsi, qword ptr [rbp-0x88]
- mov edx, dword ptr [rbp-0x80]
+ jmp SHORT G_M2787_IG25
+ ;; size=36 bbWeight=8 PerfScore 66.00
+G_M2787_IG24:
+ mov rsi, qword ptr [rbp-0x98]
+ mov edx, dword ptr [rbp-0x90]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+MethodSemanticsRow):this
- ;; size=22 bbWeight=8 PerfScore 42.00
-G_M2787_IG22:
- lea rdi, [rbp-0x40]
- mov rsi, qword ptr [rbp-0xB0]
+ ;; size=25 bbWeight=8 PerfScore 42.00
+G_M2787_IG25:
+ lea rdi, [rbp-0x58]
+ mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.HashSet`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
test eax, eax
- jne G_M2787_IG17
- ;; size=31 bbWeight=16 PerfScore 96.00
-G_M2787_IG23:
- mov rax, gword ptr [r12+0x68]
- mov gword ptr [rbp-0xF8], rax
+ jne G_M2787_IG20
+ ;; size=27 bbWeight=16 PerfScore 84.00
+G_M2787_IG26:
+ mov r13, gword ptr [r15+0x68]
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M2787_IG32
- ;; size=31 bbWeight=2 PerfScore 14.50
-G_M2787_IG24:
+ je G_M2787_IG34
+ ;; size=23 bbWeight=4 PerfScore 25.00
+G_M2787_IG27:
mov rdi, 0xD1FFAB1E ; data for System.DBNull:Value
- cmp rax, gword ptr [rdi]
- je G_M2787_IG27
- mov ecx, dword ptr [rbp-0xA4]
- mov dword ptr [rbp-0xA0], ecx
- mov r12, gword ptr [r12+0x68]
+ cmp r13, gword ptr [rdi]
+ je G_M2787_IG31
+ ;; size=19 bbWeight=4 PerfScore 17.00
+G_M2787_IG28:
+ mov r12, gword ptr [r15+0x68]
test r12, r12
- je G_M2787_IG29
+ je G_M2787_IG30
mov rdi, r12
call System.Object:GetType():System.Type:this
- mov gword ptr [rbp-0xE0], rax
- mov rdi, rax
- mov rcx, 0xD1FFAB1E ; code for System.RuntimeType:get_IsEnum():ubyte:this
- call [rcx]System.RuntimeType:get_IsEnum():ubyte:this
+ mov r15, rax
+ mov rdi, r15
+ mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsEnum():ubyte:this
+ call [rax]System.RuntimeType:get_IsEnum():ubyte:this
test eax, eax
- je G_M2787_IG28
- mov rdi, gword ptr [rbp-0xE0]
+ je SHORT G_M2787_IG30
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsActualEnum():ubyte:this
call [rax]System.RuntimeType:get_IsActualEnum():ubyte:this
test eax, eax
- je G_M2787_IG34
+ je G_M2787_IG36
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M2787_IG33
- ;; size=129 bbWeight=2 PerfScore 52.50
-G_M2787_IG25:
+ je G_M2787_IG35
+ ;; size=85 bbWeight=2 PerfScore 37.00
+G_M2787_IG29:
mov rdi, 0xD1FFAB1E ; data for System.Enum:s_underlyingTypes
- mov rax, gword ptr [rdi]
- mov gword ptr [rbp-0xF0], rax
- mov rcx, gword ptr [rbp-0xE0]
- mov rdi, qword ptr [rcx+0x18]
+ mov r13, gword ptr [rdi]
+ mov rdi, qword ptr [r15+0x18]
call System.Enum:InternalGetCorElementType(ulong):ubyte
- mov rcx, gword ptr [rbp-0xF0]
- cmp eax, dword ptr [rcx+0x08]
- jae G_M2787_IG30
+ cmp eax, dword ptr [r13+0x08]
+ jae SHORT G_M2787_IG32
mov eax, eax
- mov rax, gword ptr [rcx+8*rax+0x10]
- mov gword ptr [rbp-0xE8], rax
- mov rcx, 0xD1FFAB1E ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
- call [rcx]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+ mov r13, gword ptr [r13+8*rax+0x10]
+ mov rax, 0xD1FFAB1E ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+ call [rax]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
mov rdx, rax
- mov rsi, gword ptr [rbp-0xE8]
+ mov rsi, r13
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
call [rax]System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
mov r12, rax
- mov edx, dword ptr [rbp-0xA0]
- ;; size=112 bbWeight=2 PerfScore 49.50
-G_M2787_IG26:
+ ;; size=71 bbWeight=2 PerfScore 38.00
+G_M2787_IG30:
mov rdi, gword ptr [rbx+0x18]
- mov esi, edx
+ mov esi, r14d
mov rdx, r12
mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
cmp dword ptr [rdi], edi
call [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
- ;; size=23 bbWeight=2 PerfScore 17.50
-G_M2787_IG27:
- mov edi, dword ptr [r15+0x14]
- cmp r14d, edi
- jne G_M2787_IG35
- mov edi, dword ptr [r15+0x10]
- cmp r13d, edi
- jae G_M2787_IG03
- mov rdi, gword ptr [r15+0x08]
- cmp r13d, dword ptr [rdi+0x08]
- jae SHORT G_M2787_IG30
- mov esi, r13d
- mov r12, gword ptr [rdi+8*rsi+0x10]
- inc r13d
- jmp G_M2787_IG05
- ;; size=52 bbWeight=4 PerfScore 68.00
-G_M2787_IG28:
- mov edx, dword ptr [rbp-0xA0]
- jmp SHORT G_M2787_IG26
- ;; size=8 bbWeight=1 PerfScore 3.00
-G_M2787_IG29:
- mov edx, dword ptr [rbp-0xA0]
- jmp SHORT G_M2787_IG26
- ;; size=8 bbWeight=1 PerfScore 3.00
-G_M2787_IG30:
+ ;; size=24 bbWeight=2 PerfScore 17.50
+G_M2787_IG31:
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.PropertyBuilderImpl]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M2787_IG06
+ jmp G_M2787_IG03
+ ;; size=39 bbWeight=4 PerfScore 29.00
+G_M2787_IG32:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-G_M2787_IG31:
+G_M2787_IG33:
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS
call [rax]CORINFO_HELP_CHKCASTCLASS
int3
;; size=16 bbWeight=0 PerfScore 0.00
-G_M2787_IG32:
+G_M2787_IG34:
mov rdi, 0xD1FFAB1E
mov esi, 205
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
- mov rax, gword ptr [rbp-0xF8]
- jmp G_M2787_IG24
- ;; size=32 bbWeight=0 PerfScore 0.00
-G_M2787_IG33:
+ jmp G_M2787_IG27
+ ;; size=25 bbWeight=0 PerfScore 0.00
+G_M2787_IG35:
mov rdi, 0xD1FFAB1E
mov esi, 74
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
- jmp G_M2787_IG25
+ jmp G_M2787_IG29
;; size=25 bbWeight=0 PerfScore 0.00
-G_M2787_IG34:
+G_M2787_IG36:
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:ThrowMustBeEnum()
call [rax]System.RuntimeType:ThrowMustBeEnum()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M2787_IG35:
- 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
-; Total bytes of code 1596, prolog size 41, PerfScore 1565.46, instruction count 349, allocated bytes for code 1596 (MethodHash=b57df51c) for method System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):this (FullOpts)
+; Total bytes of code 1437, prolog size 45, PerfScore 1579.08, instruction count 320, allocated bytes for code 1437 (MethodHash=b57df51c) for method System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):this (FullOpts)
-129 (-4.86 % of base) - System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+d__23[System.__Canon,System.Nullable`1[int]]:MoveNext():this
; Assembly listing for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[System.__Canon,System.Nullable`1[int]]: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; 37 single block inlinees; 19 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T08] ( 33, 42 ) byref -> [rbp-0xA8] this EH-live single-def
-; V01 TypeCtx [V01,T44] ( 7, 9 ) long -> [rbp-0x30] EH-live single-def
-; V02 loc0 [V02,T17] ( 10, 18 ) int -> [rbp-0x34] do-not-enreg[Z] EH-live
-; V03 loc1 [V03,T10] ( 15, 26 ) ref -> [rbp-0xB0] class-hnd exact EH-live spill-single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[System.__Canon,System.Nullable`1[int]]>
-; V04 loc2 [V04,T68] ( 4, 3 ) ref -> [rbp-0xB8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V05 loc3 [V05 ] ( 5, 5 ) ubyte -> [rbp-0x40] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V06 loc4 [V06,T16] ( 2, 12 ) struct (32) [rbp-0x60] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V07 loc5 [V07,T48] ( 2, 8 ) struct (16) [rbp-0x70] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V00 this [V00,T02] ( 33, 42 ) byref -> [rbp-0xC8] this EH-live single-def
+; V01 TypeCtx [V01,T28] ( 7, 9 ) long -> [rbp-0x38] EH-live single-def
+; V02 loc0 [V02,T05] ( 10, 18 ) int -> [rbp-0x3C] do-not-enreg[Z] EH-live
+; V03 loc1 [V03,T03] ( 15, 26 ) ref -> [rbp-0xD0] class-hnd exact EH-live single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[System.__Canon,System.Nullable`1[int]]>
+; V04 loc2 [V04,T52] ( 4, 3 ) ref -> [rbp-0xD8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V05 loc3 [V05 ] ( 5, 5 ) ubyte -> [rbp-0x48] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V06 loc4 [V06 ] ( 7, 20 ) struct (32) [rbp-0x68] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V07 loc5 [V07,T32] ( 2, 8 ) struct (16) [rbp-0x78] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V08 loc6 [V08 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V09 loc7 [V09 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op <System.Nullable`1[System.TimeSpan]>
-; V10 loc8 [V10,T37] ( 4, 12 ) ref -> [rbp-0xC0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V11 loc9 [V11 ] ( 5, 16 ) ubyte -> [rbp-0x78] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V12 loc10 [V12,T18] ( 4, 16 ) ref -> registers class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
+; V10 loc8 [V10,T21] ( 4, 12 ) ref -> [rbp-0xE0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V11 loc9 [V11 ] ( 5, 16 ) ubyte -> [rbp-0x80] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V12 loc10 [V12,T06] ( 4, 16 ) ref -> rax class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
;* V13 loc11 [V13 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V14 loc12 [V14,T46] ( 2, 8 ) ref -> [rbp-0xC8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
-; V15 loc13 [V15 ] ( 10, 34 ) struct (16) [rbp-0x88] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V16 loc14 [V16,T42] ( 3, 12 ) struct (16) [rbp-0x98] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
+; V14 loc12 [V14,T30] ( 2, 8 ) ref -> [rbp-0xE8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
+; V15 loc13 [V15 ] ( 10, 34 ) struct (16) [rbp-0x90] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+; V16 loc14 [V16,T26] ( 3, 12 ) struct (16) [rbp-0xA0] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V17 loc15 [V17 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V18 loc16 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
;* V19 loc17 [V19 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <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,T82] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
+; V22 tmp2 [V22,T66] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
;* V23 tmp3 [V23 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-; V24 tmp4 [V24,T83] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V25 tmp5 [V25,T84] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V24 tmp4 [V24,T67] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V25 tmp5 [V25,T68] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V26 tmp6 [V26 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
-; V27 tmp7 [V27,T85] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V28 tmp8 [V28,T86] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V27 tmp7 [V27,T69] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V28 tmp8 [V28,T70] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V29 tmp9 [V29 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
;* V30 tmp10 [V30 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
;* V31 tmp11 [V31 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V32 tmp12 [V32 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
;* V33 tmp13 [V33 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V34 tmp14 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Nullable`1[int]>
-; V35 tmp15 [V35,T02] ( 7, 56 ) ref -> r14 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V35 tmp15 [V35,T01] ( 7, 56 ) ref -> r13 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
;* V36 tmp16 [V36 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
-; V37 tmp17 [V37,T89] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V38 tmp18 [V38,T35] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V39 tmp19 [V39,T70] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
-; V40 tmp20 [V40,T53] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-;* V41 tmp21 [V41 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V37 tmp17 [V37,T73] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V38 tmp18 [V38,T19] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V39 tmp19 [V39,T54] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
+; V40 tmp20 [V40,T36] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V41 tmp21 [V41,T47] ( 2, 4 ) struct (32) [rbp-0xC0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
;* V42 tmp22 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V43 tmp23 [V43,T19] ( 4, 16 ) ref -> registers class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V43 tmp23 [V43,T07] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V44 tmp24 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
;* V45 tmp25 [V45 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.TimeSpan>
-; V46 tmp26 [V46,T20] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V46 tmp26 [V46,T08] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V47 tmp27 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
;* V48 tmp28 [V48 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.TimeSpan>
-; V49 tmp29 [V49,T21] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V49 tmp29 [V49,T09] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V50 tmp30 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V51 tmp31 [V51,T38] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
-; V52 tmp32 [V52,T25] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
-; V53 tmp33 [V53,T39] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V51 tmp31 [V51,T22] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
+; V52 tmp32 [V52,T13] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
+; V53 tmp33 [V53,T23] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V54 tmp34 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V55 tmp35 [V55,T78] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V56 tmp36 [V56,T87] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V57 tmp37 [V57,T80] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V58 tmp38 [V58,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V59 tmp39 [V59 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V60 tmp40 [V60,T60] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-;* V61 tmp41 [V61 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
-;* V62 tmp42 [V62 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V63 tmp43 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V64 tmp44 [V64 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V65 tmp45 [V65 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-; V66 tmp46 [V66,T29] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
-; V67 tmp47 [V67,T31] ( 2, 16 ) short -> rdi "Inlining Arg"
-;* V68 tmp48 [V68 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V69 tmp49 [V69,T65] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V70 tmp50 [V70,T22] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
-; V71 tmp51 [V71,T40] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V72 tmp52 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V73 tmp53 [V73 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-; V74 tmp54 [V74,T61] ( 2, 4 ) byref -> r15 "Inlining Arg"
-; V75 tmp55 [V75,T57] ( 4, 4.40) long -> rdi "Inlining Arg"
-;* V76 tmp56 [V76 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-;* V77 tmp57 [V77 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V78 tmp58 [V78,T58] ( 4, 4.40) long -> rsi "Inlining Arg"
-;* V79 tmp59 [V79 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-;* V80 tmp60 [V80 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V81 tmp61 [V81,T23] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
-; V82 tmp62 [V82,T24] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V83 tmp63 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V84 tmp64 [V84,T79] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V85 tmp65 [V85,T88] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V86 tmp66 [V86,T81] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V87 tmp67 [V87,T32] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V88 tmp68 [V88,T00] ( 9,144 ) byref -> rbx "Inlining Arg"
-; V89 tmp69 [V89,T09] ( 4, 32 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V90 tmp70 [V90,T36] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V91 tmp71 [V91,T71] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
-; V92 tmp72 [V92,T45] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
-;* V93 tmp73 [V93,T75] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
-; V94 tmp74 [V94,T62] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
-;* V95 tmp75 [V95 ] ( 0, 0 ) long -> zero-ref "field V08._ticks (fldOffset=0x0)" P-INDEP
-; V96 tmp76 [V96,T26] ( 4, 16 ) ubyte -> rax "field V09.hasValue (fldOffset=0x0)" P-INDEP
-; V97 tmp77 [V97,T27] ( 4, 16 ) long -> r14 "field V09.value (fldOffset=0x8)" P-INDEP
-;* V98 tmp78 [V98 ] ( 0, 0 ) ubyte -> zero-ref "field V26.hasValue (fldOffset=0x0)" P-DEP
-;* V99 tmp79 [V99 ] ( 0, 0 ) long -> zero-ref "field V26.value (fldOffset=0x8)" P-DEP
-;* V100 tmp80 [V100 ] ( 0, 0 ) ubyte -> zero-ref "field V30.hasValue (fldOffset=0x0)" P-DEP
-;* V101 tmp81 [V101 ] ( 0, 0 ) long -> zero-ref "field V30.value (fldOffset=0x8)" P-DEP
-; V102 tmp82 [V102,T43] ( 3, 12 ) long -> r14 "field V31._ticks (fldOffset=0x0)" P-INDEP
-;* V103 tmp83 [V103 ] ( 0, 0 ) ubyte -> zero-ref "field V34.hasValue (fldOffset=0x0)" P-INDEP
-;* V104 tmp84 [V104 ] ( 0, 0 ) int -> zero-ref "field V34.value (fldOffset=0x4)" P-INDEP
-;* V105 tmp85 [V105,T66] ( 0, 0 ) long -> zero-ref "field V36._ticks (fldOffset=0x0)" P-INDEP
-; V106 tmp86 [V106,T49] ( 2, 8 ) long -> rsi "field V45._ticks (fldOffset=0x0)" P-INDEP
-; V107 tmp87 [V107,T50] ( 2, 8 ) long -> rdi "field V48._ticks (fldOffset=0x0)" P-INDEP
-; V108 tmp88 [V108,T69] ( 3, 3 ) ref -> rsi single-def "field V61._list (fldOffset=0x0)" P-INDEP
-;* V109 tmp89 [V109,T74] ( 0, 0 ) ref -> zero-ref single-def "field V61._current (fldOffset=0x8)" P-INDEP
-;* V110 tmp90 [V110,T76] ( 0, 0 ) int -> zero-ref single-def "field V61._index (fldOffset=0x10)" P-INDEP
-; V111 tmp91 [V111,T72] ( 2, 2 ) int -> r15 single-def "field V61._version (fldOffset=0x14)" P-INDEP
-; V112 tmp92 [V112,T47] ( 2, 8 ) ref -> rsi "field V63._obj (fldOffset=0x0)" P-INDEP
-; V113 tmp93 [V113,T51] ( 2, 8 ) short -> rdi "field V63._token (fldOffset=0x8)" P-INDEP
-;* V114 tmp94 [V114,T67] ( 0, 0 ) ubyte -> zero-ref "field V63._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V115 tmp95 [V115 ] ( 0, 0 ) ref -> zero-ref "field V64._obj (fldOffset=0x0)" P-INDEP
-;* V116 tmp96 [V116 ] ( 0, 0 ) short -> zero-ref "field V64._token (fldOffset=0x8)" P-INDEP
-;* V117 tmp97 [V117 ] ( 0, 0 ) ubyte -> zero-ref "field V64._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V118 tmp98 [V118,T11] ( 4, 24 ) ref -> [rbp-0xD0] EH-live spill-single-def "V06.[000..008)"
-; V119 tmp99 [V119,T03] ( 6, 41 ) int -> [rbp-0x9C] do-not-enreg[Z] EH-live "V06.[008..012)"
-; V120 tmp100 [V120,T52] ( 2, 8 ) int -> [rbp-0xA0] EH-live spill-single-def "V06.[012..016)"
-; V121 tmp101 [V121,T01] ( 14, 60 ) ref -> registers "V06.[016..024)"
-;* V122 tmp102 [V122 ] ( 0, 0 ) ref -> zero-ref "V07.[000..008)"
-;* V123 tmp103 [V123 ] ( 0, 0 ) ref -> zero-ref single-def "V41.[000..008)"
-;* V124 tmp104 [V124 ] ( 0, 0 ) int -> zero-ref single-def "V41.[008..012)"
-; V125 tmp105 [V125,T73] ( 2, 2 ) int -> rax single-def "V41.[012..016)"
-;* V126 tmp106 [V126 ] ( 0, 0 ) ref -> zero-ref single-def "V41.[016..024)"
-; V127 tmp107 [V127,T04] ( 3, 48 ) byref -> rax "Spilling address for field-by-field copy"
-; V128 tmp108 [V128,T05] ( 3, 48 ) ref -> rax "arr expr"
-; V129 tmp109 [V129,T06] ( 3, 48 ) ref -> rdi "arr expr"
-; V130 tmp110 [V130,T07] ( 3, 48 ) int -> rsi "index expr"
-; V131 tmp111 [V131,T64] ( 2, 4 ) long -> rdi "argument with side effect"
-; V132 tmp112 [V132,T63] ( 2, 4 ) ref -> rsi "argument with side effect"
-; V133 PSPSym [V133,T77] ( 1, 1 ) long -> [rbp-0xD8] do-not-enreg[V] "PSPSym"
-; V134 cse0 [V134,T41] ( 3, 12 ) ref -> r13 "CSE #03: conservative"
-; V135 cse1 [V135,T33] ( 2, 16 ) int -> rax "CSE #05: moderate"
-; V136 cse2 [V136,T13] ( 2, 16 ) int -> rax "CSE #06: moderate"
-; V137 cse3 [V137,T14] ( 3, 24 ) int -> rsi "CSE #08: moderate"
-; V138 cse4 [V138,T34] ( 2, 16 ) int -> rsi "CSE #09: moderate"
-; V139 cse5 [V139,T12] ( 3, 24 ) ref -> r15 "CSE #10: moderate"
-; V140 rat0 [V140,T28] ( 3, 16 ) long -> rdi "runtime lookup"
-; V141 rat1 [V141,T15] ( 3, 22.40) long -> rdi "fgMakeTemp is creating a new local variable"
-; V142 rat2 [V142,T54] ( 3, 5.60) long -> rdi "fgMakeTemp is creating a new local variable"
-; V143 rat3 [V143,T55] ( 3, 5.60) long -> rsi "fgMakeTemp is creating a new local variable"
-; V144 rat4 [V144,T59] ( 3, 4 ) long -> rdi "runtime lookup"
-; V145 rat5 [V145,T56] ( 3, 5.60) long -> rdi "fgMakeTemp is creating a new local variable"
+; V55 tmp35 [V55,T62] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V56 tmp36 [V56,T71] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V57 tmp37 [V57,T64] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V58 tmp38 [V58,T43] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+;* V59 tmp39 [V59 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
+;* V60 tmp40 [V60 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V61 tmp41 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V62 tmp42 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V63 tmp43 [V63 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+; V64 tmp44 [V64,T17] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
+; V65 tmp45 [V65,T18] ( 2, 16 ) short -> rdi "Inlining Arg"
+;* V66 tmp46 [V66 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V67 tmp47 [V67,T49] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V68 tmp48 [V68,T10] ( 4, 16 ) ref -> r14 class-hnd "Inline stloc first use temp" <System.Object>
+; V69 tmp49 [V69,T24] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V70 tmp50 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V71 tmp51 [V71 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+; V72 tmp52 [V72,T44] ( 2, 4 ) byref -> r14 "Inlining Arg"
+; V73 tmp53 [V73,T40] ( 4, 4.40) long -> rdi "Inlining Arg"
+;* V74 tmp54 [V74 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+;* V75 tmp55 [V75 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+; V76 tmp56 [V76,T41] ( 4, 4.40) long -> rsi "Inlining Arg"
+;* V77 tmp57 [V77 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+;* V78 tmp58 [V78 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V79 tmp59 [V79,T11] ( 4, 16 ) ref -> r14 class-hnd "Inline stloc first use temp" <System.Object>
+; V80 tmp60 [V80,T12] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V81 tmp61 [V81 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V82 tmp62 [V82,T63] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V83 tmp63 [V83,T72] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V84 tmp64 [V84,T65] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V85 tmp65 [V85,T20] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V86 tmp66 [V86,T55] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
+; V87 tmp67 [V87,T29] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
+;* V88 tmp68 [V88,T59] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
+; V89 tmp69 [V89,T45] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
+;* V90 tmp70 [V90 ] ( 0, 0 ) long -> zero-ref "field V08._ticks (fldOffset=0x0)" P-INDEP
+; V91 tmp71 [V91,T14] ( 4, 16 ) ubyte -> rax "field V09.hasValue (fldOffset=0x0)" P-INDEP
+; V92 tmp72 [V92,T15] ( 4, 16 ) long -> r13 "field V09.value (fldOffset=0x8)" P-INDEP
+;* V93 tmp73 [V93 ] ( 0, 0 ) ubyte -> zero-ref "field V26.hasValue (fldOffset=0x0)" P-DEP
+;* V94 tmp74 [V94 ] ( 0, 0 ) long -> zero-ref "field V26.value (fldOffset=0x8)" P-DEP
+;* V95 tmp75 [V95 ] ( 0, 0 ) ubyte -> zero-ref "field V30.hasValue (fldOffset=0x0)" P-DEP
+;* V96 tmp76 [V96 ] ( 0, 0 ) long -> zero-ref "field V30.value (fldOffset=0x8)" P-DEP
+; V97 tmp77 [V97,T27] ( 3, 12 ) long -> r13 "field V31._ticks (fldOffset=0x0)" P-INDEP
+;* V98 tmp78 [V98 ] ( 0, 0 ) ubyte -> zero-ref "field V34.hasValue (fldOffset=0x0)" P-INDEP
+;* V99 tmp79 [V99 ] ( 0, 0 ) int -> zero-ref "field V34.value (fldOffset=0x4)" P-INDEP
+;* V100 tmp80 [V100,T50] ( 0, 0 ) long -> zero-ref "field V36._ticks (fldOffset=0x0)" P-INDEP
+; V101 tmp81 [V101,T33] ( 2, 8 ) long -> rsi "field V45._ticks (fldOffset=0x0)" P-INDEP
+; V102 tmp82 [V102,T34] ( 2, 8 ) long -> rdi "field V48._ticks (fldOffset=0x0)" P-INDEP
+; V103 tmp83 [V103,T53] ( 3, 3 ) ref -> rsi single-def "field V59._list (fldOffset=0x0)" P-INDEP
+;* V104 tmp84 [V104,T58] ( 0, 0 ) ref -> zero-ref single-def "field V59._current (fldOffset=0x8)" P-INDEP
+;* V105 tmp85 [V105,T60] ( 0, 0 ) int -> zero-ref single-def "field V59._index (fldOffset=0x10)" P-INDEP
+; V106 tmp86 [V106,T56] ( 2, 2 ) int -> r14 single-def "field V59._version (fldOffset=0x14)" P-INDEP
+; V107 tmp87 [V107,T31] ( 2, 8 ) ref -> rsi "field V61._obj (fldOffset=0x0)" P-INDEP
+; V108 tmp88 [V108,T35] ( 2, 8 ) short -> rdi "field V61._token (fldOffset=0x8)" P-INDEP
+;* V109 tmp89 [V109,T51] ( 0, 0 ) ubyte -> zero-ref "field V61._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V110 tmp90 [V110 ] ( 0, 0 ) ref -> zero-ref "field V62._obj (fldOffset=0x0)" P-INDEP
+;* V111 tmp91 [V111 ] ( 0, 0 ) short -> zero-ref "field V62._token (fldOffset=0x8)" P-INDEP
+;* V112 tmp92 [V112 ] ( 0, 0 ) ubyte -> zero-ref "field V62._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V113 tmp93 [V113,T00] ( 14, 56 ) ref -> registers "V07.[000..008)"
+;* V114 tmp94 [V114 ] ( 0, 0 ) ref -> zero-ref single-def "V41.[000..008)"
+;* V115 tmp95 [V115 ] ( 0, 0 ) int -> zero-ref single-def "V41.[008..012)"
+; V116 tmp96 [V116,T57] ( 2, 2 ) int -> rsi single-def "V41.[012..016)"
+; V117 tmp97 [V117,T48] ( 2, 4 ) long -> rdi "argument with side effect"
+; V118 tmp98 [V118,T46] ( 2, 4 ) ref -> rsi "argument with side effect"
+; V119 PSPSym [V119,T61] ( 1, 1 ) long -> [rbp-0xF8] do-not-enreg[V] "PSPSym"
+; V120 cse0 [V120,T25] ( 3, 12 ) ref -> r12 "CSE #03: moderate"
+; V121 rat0 [V121,T16] ( 3, 16 ) long -> rdi "runtime lookup"
+; V122 rat1 [V122,T04] ( 3, 22.40) long -> rdi "fgMakeTemp is creating a new local variable"
+; V123 rat2 [V123,T37] ( 3, 5.60) long -> rdi "fgMakeTemp is creating a new local variable"
+; V124 rat3 [V124,T38] ( 3, 5.60) long -> rsi "fgMakeTemp is creating a new local variable"
+; V125 rat4 [V125,T42] ( 3, 4 ) long -> rdi "runtime lookup"
+; V126 rat5 [V126,T39] ( 3, 5.60) long -> rdi "fgMakeTemp is creating a new local variable"
;
-; Lcl frame size = 192
+; Lcl frame size = 216
G_M17541_IG01:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 192
- lea rbp, [rsp+0xE0]
+ sub rsp, 216
+ lea rbp, [rsp+0x100]
xor eax, eax
- mov qword ptr [rbp-0xC8], rax
+ mov qword ptr [rbp-0xE8], rax
vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0xE0], ymm8
vmovdqu ymmword ptr [rbp-0xC0], ymm8
vmovdqu ymmword ptr [rbp-0xA0], ymm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
- mov qword ptr [rbp-0x40], rax
- mov qword ptr [rbp-0xD8], rsp
- mov qword ptr [rbp-0x28], rsi
- mov bword ptr [rbp-0xA8], rdi
+ mov qword ptr [rbp-0xF8], rsp
mov qword ptr [rbp-0x30], rsi
+ mov bword ptr [rbp-0xC8], rdi
+ mov qword ptr [rbp-0x38], rsi
mov rdx, rdi
mov rbx, rsi
- ;; size=95 bbWeight=1 PerfScore 20.83
+ ;; size=101 bbWeight=1 PerfScore 22.83
G_M17541_IG02:
mov esi, dword ptr [rdx+0x10]
- mov dword ptr [rbp-0x34], esi
- mov r8, gword ptr [rdx]
- mov gword ptr [rbp-0xB0], r8
+ mov dword ptr [rbp-0x3C], esi
+ mov r15, gword ptr [rdx]
+ mov gword ptr [rbp-0xD0], r15
;; size=16 bbWeight=1 PerfScore 6.00
G_M17541_IG03:
- cmp dword ptr [rbp-0x34], 0
+ cmp dword ptr [rbp-0x3C], 0
je G_M17541_IG38
- mov rdi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xB8], rdi
+ mov rdi, gword ptr [r15+0x10]
+ mov gword ptr [rbp-0xD8], rdi
xor esi, esi
- mov dword ptr [rbp-0x40], esi
+ mov dword ptr [rbp-0x48], esi
;; size=26 bbWeight=1 PerfScore 7.25
G_M17541_IG04:
- cmp byte ptr [rbp-0x40], 0
+ cmp byte ptr [rbp-0x48], 0
je SHORT G_M17541_IG06
;; size=6 bbWeight=1 PerfScore 3.00
G_M17541_IG05:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M17541_IG06:
- lea rsi, [rbp-0x40]
+ lea rsi, [rbp-0x48]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- mov r8, gword ptr [rbp-0xB0]
- cmp byte ptr [r8+0x40], 0
- jne G_M17541_IG09
- cmp byte ptr [r8+0x41], 0
+ cmp byte ptr [r15+0x40], 0
+ jne SHORT G_M17541_IG09
+ cmp byte ptr [r15+0x41], 0
je SHORT G_M17541_IG08
- mov rdi, gword ptr [r8+0x20]
+ mov rdi, gword ptr [r15+0x20]
inc dword ptr [rdi+0x14]
mov edx, dword ptr [rdi+0x10]
xor esi, esi
mov dword ptr [rdi+0x10], esi
test edx, edx
jle SHORT G_M17541_IG07
mov rdi, gword ptr [rdi+0x08]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
- ;; size=71 bbWeight=1 PerfScore 25.50
+ ;; size=60 bbWeight=1 PerfScore 24.50
G_M17541_IG07:
- mov r8, gword ptr [rbp-0xB0]
- mov rdi, gword ptr [r8+0x20]
- mov rsi, gword ptr [r8+0x10]
+ mov rdi, gword ptr [r15+0x20]
+ mov rsi, gword ptr [r15+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
- mov r8, gword ptr [rbp-0xB0]
- mov byte ptr [r8+0x41], 0
- mov r8, gword ptr [rbp-0xB0]
- ;; size=48 bbWeight=1 PerfScore 14.25
+ mov byte ptr [r15+0x41], 0
+ ;; size=27 bbWeight=1 PerfScore 11.25
G_M17541_IG08:
- cmp dword ptr [rbp-0x34], 0
+ cmp dword ptr [rbp-0x3C], 0
jge SHORT G_M17541_IG11
- cmp byte ptr [rbp-0x40], 0
+ cmp byte ptr [rbp-0x48], 0
je SHORT G_M17541_IG11
- mov rdi, gword ptr [rbp-0xB8]
+ mov rdi, gword ptr [rbp-0xD8]
call System.Threading.Monitor:Exit(System.Object)
- mov r8, gword ptr [rbp-0xB0]
jmp SHORT G_M17541_IG11
- ;; size=33 bbWeight=1 PerfScore 11.00
+ ;; size=26 bbWeight=1 PerfScore 10.00
G_M17541_IG09:
mov rdi, rsp
- call G_M17541_IG71
+ call G_M17541_IG68
;; size=8 bbWeight=1 PerfScore 1.25
G_M17541_IG10:
- jmp G_M17541_IG67
+ jmp G_M17541_IG64
;; size=5 bbWeight=1 PerfScore 2.00
G_M17541_IG11:
xor rdi, rdi
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
mov gword ptr [rdx+0x08], rdi
- mov rdi, gword ptr [r8+0x20]
- mov eax, dword ptr [rdi+0x14]
- mov gword ptr [rbp-0xD0], rdi
- xor ecx, ecx
- mov dword ptr [rbp-0x9C], ecx
- mov dword ptr [rbp-0xA0], eax
- ;; size=41 bbWeight=1 PerfScore 9.50
+ mov rdi, gword ptr [r15+0x20]
+ mov esi, dword ptr [rdi+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0xB0], xmm0
+ ;; size=32 bbWeight=1 PerfScore 7.58
G_M17541_IG12:
- jmp G_M17541_IG33
- ;; size=5 bbWeight=1 PerfScore 2.00
+ vmovdqu ymm0, ymmword ptr [rbp-0xC0]
+ vmovdqu ymmword ptr [rbp-0x68], ymm0
+ ;; size=13 bbWeight=1 PerfScore 5.00
G_M17541_IG13:
- mov rax, qword ptr [rbp-0x48]
- mov qword ptr [rbp-0x68], rax
- cmp gword ptr [rbx+0x08], 0
- jne G_M17541_IG33
- mov r15, rbx
- mov eax, dword ptr [rbp-0xA0]
- mov rbx, qword ptr [rbp-0x30]
- mov rdi, gword ptr [rbp-0xD0]
- cmp gword ptr [r15+0x08], 0
- je SHORT G_M17541_IG14
- mov rdi, r15
- mov rcx, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- call [rcx]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M17541_IG15
- ;; size=63 bbWeight=4 PerfScore 75.00
+ mov gword ptr [rbp-0x68], rdi
+ xor edi, edi
+ mov dword ptr [rbp-0x60], edi
+ mov dword ptr [rbp-0x5C], esi
+ ;; size=12 bbWeight=1 PerfScore 3.25
G_M17541_IG14:
- mov rcx, gword ptr [r15+0x18]
- mov rax, rcx
- ;; size=7 bbWeight=4 PerfScore 9.00
+ jmp G_M17541_IG35
+ ;; size=5 bbWeight=1 PerfScore 2.00
G_M17541_IG15:
+ mov rbx, gword ptr [rbp-0x58]
+ mov rdi, qword ptr [rbp-0x50]
+ mov qword ptr [rbp-0x70], rdi
+ cmp gword ptr [rbx+0x08], 0
+ jne G_M17541_IG35
+ mov r14, rbx
+ mov rbx, qword ptr [rbp-0x38]
+ mov r15, gword ptr [rbp-0xD0]
+ cmp gword ptr [r14+0x08], 0
+ je SHORT G_M17541_IG16
+ mov rdi, r14
+ mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ jmp SHORT G_M17541_IG17
+ ;; size=61 bbWeight=4 PerfScore 75.00
+G_M17541_IG16:
+ mov rax, gword ptr [r14+0x18]
+ ;; size=4 bbWeight=4 PerfScore 8.00
+G_M17541_IG17:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
- mov r14, rdx
+ mov r13, rdx
test al, al
- je G_M17541_IG29
+ je G_M17541_IG31
mov rdi, qword ptr [rbx+0x30]
mov rdi, qword ptr [rdi]
mov rdi, qword ptr [rdi+0x20]
test rdi, rdi
- je SHORT G_M17541_IG17
+ je SHORT G_M17541_IG19
;; size=40 bbWeight=4 PerfScore 64.00
-G_M17541_IG16:
- jmp SHORT G_M17541_IG18
+G_M17541_IG18:
+ jmp SHORT G_M17541_IG20
;; size=2 bbWeight=3.20 PerfScore 6.40
-G_M17541_IG17:
+G_M17541_IG19:
mov rdi, rbx
mov rsi, 0xD1FFAB1E ; global ptr
call CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov rdi, rax
;; size=21 bbWeight=0.80 PerfScore 1.40
-G_M17541_IG18:
+G_M17541_IG20:
call CORINFO_HELP_GETGENERICS_GCSTATIC_BASE
- mov r13, gword ptr [rax]
- mov rsi, qword ptr [r13+0x08]
- cmp r14, rsi
- jle G_M17541_IG29
- mov r8, gword ptr [rbp-0xB0]
- mov rsi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xC0], rsi
+ mov r12, gword ptr [rax]
+ mov rsi, qword ptr [r12+0x08]
+ cmp r13, rsi
+ jle G_M17541_IG31
+ mov rsi, gword ptr [r15+0x10]
+ mov gword ptr [rbp-0xE0], rsi
xor esi, esi
- mov dword ptr [rbp-0x78], esi
- ;; size=44 bbWeight=4 PerfScore 46.00
-G_M17541_IG19:
- cmp byte ptr [rbp-0x78], 0
- jne G_M17541_IG23
- lea rsi, [rbp-0x78]
- mov rdi, gword ptr [rbp-0xC0]
+ mov dword ptr [rbp-0x80], esi
+ ;; size=38 bbWeight=4 PerfScore 42.00
+G_M17541_IG21:
+ cmp byte ptr [rbp-0x80], 0
+ jne G_M17541_IG25
+ lea rsi, [rbp-0x80]
+ mov rdi, gword ptr [rbp-0xE0]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- cmp gword ptr [r15+0x08], 0
- je G_M17541_IG24
- mov rdi, r15
+ cmp gword ptr [r14+0x08], 0
+ je G_M17541_IG26
+ mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
;; size=52 bbWeight=4 PerfScore 52.00
-G_M17541_IG20:
+G_M17541_IG22:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
- mov r14, rdx
+ mov r13, rdx
test al, al
- jne G_M17541_IG25
- xor r14d, r14d
+ jne G_M17541_IG27
+ xor r13d, r13d
;; size=27 bbWeight=4 PerfScore 36.00
-G_M17541_IG21:
- mov rdi, qword ptr [r13+0x08]
- cmp r14, rdi
- jle G_M17541_IG28
- mov r8, gword ptr [rbp-0xB0]
- mov byte ptr [r8+0x41], 1
- mov rdi, gword ptr [r8+0x10]
- mov rsi, qword ptr [rbp-0x68]
+G_M17541_IG23:
+ mov rdi, qword ptr [r12+0x08]
+ cmp r13, rdi
+ jle G_M17541_IG30
+ mov byte ptr [r15+0x41], 1
+ mov rdi, gword ptr [r15+0x10]
+ mov rsi, qword ptr [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
- mov r8, gword ptr [rbp-0xB0]
- mov r14, gword ptr [r8+0x28]
- cmp gword ptr [r15+0x08], 0
- je SHORT G_M17541_IG26
- mov rdi, r15
+ mov r13, gword ptr [r15+0x28]
+ cmp gword ptr [r14+0x08], 0
+ je SHORT G_M17541_IG28
+ mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- ;; size=80 bbWeight=4 PerfScore 100.00
-G_M17541_IG22:
- inc dword ptr [r14+0x14]
- mov rdi, gword ptr [r14+0x08]
- mov esi, dword ptr [r14+0x10]
+ ;; size=67 bbWeight=4 PerfScore 92.00
+G_M17541_IG24:
+ inc dword ptr [r13+0x14]
+ mov rdi, gword ptr [r13+0x08]
+ mov esi, dword ptr [r13+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M17541_IG27
+ jbe SHORT G_M17541_IG29
lea edx, [rsi+0x01]
- mov dword ptr [r14+0x10], edx
+ mov dword ptr [r13+0x10], edx
movsxd rsi, esi
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M17541_IG28
+ jmp SHORT G_M17541_IG30
;; size=44 bbWeight=4 PerfScore 73.00
-G_M17541_IG23:
+G_M17541_IG25:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M17541_IG24:
- mov rax, gword ptr [r15+0x18]
- jmp G_M17541_IG20
+G_M17541_IG26:
+ mov rax, gword ptr [r14+0x18]
+ jmp G_M17541_IG22
;; size=9 bbWeight=4 PerfScore 16.00
-G_M17541_IG25:
- jmp G_M17541_IG21
+G_M17541_IG27:
+ jmp G_M17541_IG23
;; size=5 bbWeight=4 PerfScore 8.00
-G_M17541_IG26:
- mov rax, gword ptr [r15+0x18]
- jmp SHORT G_M17541_IG22
+G_M17541_IG28:
+ mov rax, gword ptr [r14+0x18]
+ jmp SHORT G_M17541_IG24
;; size=6 bbWeight=4 PerfScore 16.00
-G_M17541_IG27:
- mov rdi, r14
+G_M17541_IG29:
+ mov rdi, r13
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
nop
;; size=19 bbWeight=4 PerfScore 16.00
-G_M17541_IG28:
- cmp dword ptr [rbp-0x34], 0
- jge SHORT G_M17541_IG33
- mov eax, dword ptr [rbp-0xA0]
- mov rdi, gword ptr [rbp-0xD0]
- cmp byte ptr [rbp-0x78], 0
- je SHORT G_M17541_IG33
- mov rdi, gword ptr [rbp-0xC0]
+G_M17541_IG30:
+ cmp dword ptr [rbp-0x3C], 0
+ jge SHORT G_M17541_IG35
+ cmp byte ptr [rbp-0x80], 0
+ je SHORT G_M17541_IG35
+ mov rdi, gword ptr [rbp-0xE0]
call System.Threading.Monitor:Exit(System.Object)
- jmp SHORT G_M17541_IG33
- ;; size=39 bbWeight=4 PerfScore 48.00
-G_M17541_IG29:
- cmp gword ptr [r15+0x08], 0
- je SHORT G_M17541_IG30
- mov rdi, r15
+ jmp SHORT G_M17541_IG35
+ ;; size=26 bbWeight=4 PerfScore 40.00
+G_M17541_IG31:
+ cmp gword ptr [r14+0x08], 0
+ je SHORT G_M17541_IG32
+ mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M17541_IG31
+ jmp SHORT G_M17541_IG33
;; size=24 bbWeight=4 PerfScore 38.00
-G_M17541_IG30:
- mov rax, gword ptr [r15+0x18]
+G_M17541_IG32:
+ mov rax, gword ptr [r14+0x18]
;; size=4 bbWeight=4 PerfScore 8.00
-G_M17541_IG31:
+G_M17541_IG33:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Threading.RateLimiting.ReplenishingRateLimiter
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M17541_IG33
+ je SHORT G_M17541_IG35
;; size=30 bbWeight=4 PerfScore 20.00
-G_M17541_IG32:
- mov rcx, rax
- mov rdi, rcx
- mov rcx, qword ptr [rcx]
- mov rcx, qword ptr [rcx+0x48]
- call [rcx+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
- nop
- ;; size=17 bbWeight=4 PerfScore 31.00
-G_M17541_IG33:
- mov rdi, gword ptr [rbp-0xD0]
- mov eax, dword ptr [rdi+0x14]
- cmp dword ptr [rbp-0xA0], eax
- jne SHORT G_M17541_IG35
- mov eax, dword ptr [rdi+0x10]
- cmp dword ptr [rbp-0x9C], eax
- jae SHORT G_M17541_IG36
- mov rax, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rax+0x08]
- cmp dword ptr [rbp-0x9C], ecx
- jae SHORT G_M17541_IG34
- mov ecx, dword ptr [rbp-0x9C]
- shl rcx, 4
- lea rax, bword ptr [rax+rcx+0x10]
- mov rbx, gword ptr [rax]
- mov rax, qword ptr [rax+0x08]
- mov qword ptr [rbp-0x48], rax
- mov eax, dword ptr [rbp-0x9C]
- inc eax
- mov dword ptr [rbp-0x9C], eax
- jmp G_M17541_IG13
- ;; size=89 bbWeight=8 PerfScore 238.00
G_M17541_IG34:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ mov rdi, rax
+ mov rax, qword ptr [rax]
+ mov rax, qword ptr [rax+0x48]
+ call [rax+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
+ nop
+ ;; size=14 bbWeight=4 PerfScore 30.00
G_M17541_IG35:
- 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
+ lea rdi, [rbp-0x68]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M17541_IG15
+ ;; size=34 bbWeight=8 PerfScore 42.00
G_M17541_IG36:
- mov r8, gword ptr [rbp-0xB0]
- mov rsi, gword ptr [r8+0x28]
- mov r15d, dword ptr [rsi+0x14]
- mov rdx, bword ptr [rbp-0xA8]
+ mov r15, gword ptr [rbp-0xD0]
+ mov rsi, gword ptr [r15+0x28]
+ mov r14d, dword ptr [rsi+0x14]
+ mov rdx, bword ptr [rbp-0xC8]
lea rdi, bword ptr [rdx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
xor rdi, rdi
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
mov gword ptr [rdx+0x28], rdi
;; size=44 bbWeight=1 PerfScore 9.75
G_M17541_IG37:
mov dword ptr [rdx+0x30], edi
- mov dword ptr [rdx+0x34], r15d
- mov rbx, qword ptr [rbp-0x30]
- mov r8, gword ptr [rbp-0xB0]
- ;; size=18 bbWeight=1 PerfScore 4.00
+ mov dword ptr [rdx+0x34], r14d
+ mov rbx, qword ptr [rbp-0x38]
+ ;; size=11 bbWeight=1 PerfScore 3.00
G_M17541_IG38:
- cmp dword ptr [rbp-0x34], 0
+ cmp dword ptr [rbp-0x3C], 0
je SHORT G_M17541_IG40
jmp G_M17541_IG57
;; size=11 bbWeight=1 PerfScore 5.00
G_M17541_IG39:
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
mov rdi, gword ptr [rdx+0x28]
- mov gword ptr [rbp-0xC8], rdi
- mov rbx, qword ptr [rbp-0x30]
- mov r8, gword ptr [rbp-0xB0]
+ mov gword ptr [rbp-0xE8], rdi
+ mov rbx, qword ptr [rbp-0x38]
+ mov r15, gword ptr [rbp-0xD0]
;; size=29 bbWeight=4 PerfScore 24.00
G_M17541_IG40:
- cmp dword ptr [rbp-0x34], 0
+ cmp dword ptr [rbp-0x3C], 0
je G_M17541_IG53
- mov rdi, gword ptr [rbp-0xC8]
+ mov rdi, gword ptr [rbp-0xE8]
mov rax, 0xD1FFAB1E ; code for System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x98], rax
- mov qword ptr [rbp-0x90], rdx
- mov rsi, gword ptr [rbp-0x98]
- movsx rdi, word ptr [rbp-0x90]
- mov gword ptr [rbp-0x88], rsi
- mov word ptr [rbp-0x80], di
- mov byte ptr [rbp-0x7E], 0
- mov r15, gword ptr [rbp-0x88]
- test r15, r15
+ mov gword ptr [rbp-0xA0], rax
+ mov qword ptr [rbp-0x98], rdx
+ mov rsi, gword ptr [rbp-0xA0]
+ movsx rdi, word ptr [rbp-0x98]
+ mov gword ptr [rbp-0x90], rsi
+ mov word ptr [rbp-0x88], di
+ mov byte ptr [rbp-0x86], 0
+ mov r14, gword ptr [rbp-0x90]
+ test r14, r14
je G_M17541_IG55
- mov rsi, r15
+ mov rsi, r14
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_M17541_IG41
test dword ptr [rax+0x34], 0xD1FFAB1E
jne G_M17541_IG55
jmp SHORT G_M17541_IG42
- ;; size=136 bbWeight=4 PerfScore 130.00
+ ;; size=142 bbWeight=4 PerfScore 130.00
G_M17541_IG41:
- mov rdi, r15
- movsx rsi, word ptr [rbp-0x80]
+ mov rdi, r14
+ movsx rsi, word ptr [rbp-0x88]
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_M17541_IG55
- ;; size=29 bbWeight=4 PerfScore 31.00
+ ;; size=32 bbWeight=4 PerfScore 31.00
G_M17541_IG42:
xor edi, edi
- mov dword ptr [rbp-0x34], edi
+ mov dword ptr [rbp-0x3C], edi
;; size=5 bbWeight=1 PerfScore 1.25
G_M17541_IG43:
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
mov dword ptr [rdx+0x10], edi
lea rdi, bword ptr [rdx+0x38]
- lea rsi, bword ptr [rbp-0x88]
+ lea rsi, bword ptr [rbp-0x90]
call CORINFO_HELP_ASSIGN_BYREF
movsq
mov rdi, qword ptr [rbx+0x30]
mov rdi, qword ptr [rdi]
mov rdi, qword ptr [rdi+0x18]
test rdi, rdi
je SHORT G_M17541_IG45
;; size=44 bbWeight=1 PerfScore 12.25
G_M17541_IG44:
jmp SHORT G_M17541_IG46
;; size=2 bbWeight=0.80 PerfScore 1.60
G_M17541_IG45:
mov rdi, rbx
mov rsi, 0xD1FFAB1E ; global ptr
call CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov rdi, rax
;; size=21 bbWeight=0.20 PerfScore 0.35
G_M17541_IG46:
- mov rdx, bword ptr [rbp-0xA8]
- lea r15, bword ptr [rdx+0x18]
+ mov rdx, bword ptr [rbp-0xC8]
+ lea r14, bword ptr [rdx+0x18]
mov rsi, qword ptr [rdi+0x10]
mov rsi, qword ptr [rsi+0x18]
test rsi, rsi
je SHORT G_M17541_IG48
;; size=24 bbWeight=1 PerfScore 6.75
G_M17541_IG47:
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
jmp SHORT G_M17541_IG49
;; size=9 bbWeight=0.80 PerfScore 2.40
G_M17541_IG48:
mov rsi, 0xD1FFAB1E ; global ptr
call CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov rsi, rax
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
;; size=25 bbWeight=0.20 PerfScore 0.50
G_M17541_IG49:
mov rdi, qword ptr [rsi+0x10]
mov rdi, qword ptr [rdi+0x18]
test rdi, rdi
je SHORT G_M17541_IG51
;; size=13 bbWeight=1 PerfScore 5.25
G_M17541_IG50:
jmp SHORT G_M17541_IG52
;; size=2 bbWeight=0.80 PerfScore 1.60
G_M17541_IG51:
mov rdi, rsi
mov rsi, 0xD1FFAB1E ; global ptr
call CORINFO_HELP_RUNTIMEHANDLE_METHOD
mov rdi, rax
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
;; size=28 bbWeight=0.20 PerfScore 0.55
G_M17541_IG52:
mov rsi, rdx
- mov rdx, r15
+ mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[System.__Canon,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[System.__Canon,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rsi, rax
- lea rdi, [rbp-0x88]
+ lea rdi, [rbp-0x90]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M17541_IG62
+ jmp G_M17541_IG59
;; size=45 bbWeight=1 PerfScore 9.75
G_M17541_IG53:
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
vmovdqu xmm0, xmmword ptr [rdx+0x38]
- vmovdqu xmmword ptr [rbp-0x88], xmm0
+ vmovdqu xmmword ptr [rbp-0x90], xmm0
;; size=20 bbWeight=4 PerfScore 24.00
G_M17541_IG54:
xor esi, esi
mov qword ptr [rdx+0x38], rsi
mov qword ptr [rdx+0x40], rsi
- mov dword ptr [rbp-0x34], -1
+ mov dword ptr [rbp-0x3C], -1
mov dword ptr [rdx+0x10], -1
;; size=24 bbWeight=4 PerfScore 17.00
G_M17541_IG55:
- mov r15, gword ptr [rbp-0x88]
- test r15, r15
+ mov r14, gword ptr [rbp-0x90]
+ test r14, r14
je SHORT G_M17541_IG57
- mov rsi, r15
+ mov rsi, r14
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_M17541_IG56
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M17541_IG57
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_M17541_IG57
;; size=78 bbWeight=4 PerfScore 66.00
G_M17541_IG56:
- mov rdi, r15
- movsx rsi, word ptr [rbp-0x80]
+ mov rdi, r14
+ movsx rsi, word ptr [rbp-0x88]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
nop
- ;; size=22 bbWeight=4 PerfScore 27.00
+ ;; size=25 bbWeight=4 PerfScore 27.00
G_M17541_IG57:
- mov rdx, bword ptr [rbp-0xA8]
- lea rbx, bword ptr [rdx+0x20]
- mov r15, gword ptr [rbx]
- mov rdi, r15
- mov esi, dword ptr [rbx+0x14]
- cmp esi, dword ptr [rdi+0x14]
- jne SHORT G_M17541_IG59
- mov esi, dword ptr [rbx+0x10]
- cmp esi, dword ptr [rdi+0x10]
- jae SHORT G_M17541_IG60
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae SHORT G_M17541_IG58
- mov rsi, gword ptr [rdi+8*rsi+0x10]
- lea rdi, bword ptr [rbx+0x08]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- inc dword ptr [rbx+0x10]
- jmp G_M17541_IG39
- ;; size=64 bbWeight=8 PerfScore 242.00
+ mov rdx, bword ptr [rbp-0xC8]
+ lea rdi, bword ptr [rdx+0x20]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M17541_IG39
+ ;; size=41 bbWeight=8 PerfScore 50.00
G_M17541_IG58:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M17541_IG59:
- 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_M17541_IG60:
- mov edi, dword ptr [r15+0x10]
- inc edi
- mov dword ptr [rbx+0x10], edi
- xor rdi, rdi
- mov gword ptr [rbx+0x08], rdi
- ;; size=15 bbWeight=8 PerfScore 36.00
-G_M17541_IG61:
- jmp SHORT G_M17541_IG64
+ jmp SHORT G_M17541_IG61
;; size=2 bbWeight=1 PerfScore 2.00
-G_M17541_IG62:
+G_M17541_IG59:
mov rdi, rsp
- call G_M17541_IG93
+ call G_M17541_IG90
;; size=8 bbWeight=1 PerfScore 1.25
-G_M17541_IG63:
- jmp G_M17541_IG69
+G_M17541_IG60:
+ jmp G_M17541_IG66
;; size=5 bbWeight=1 PerfScore 2.00
-G_M17541_IG64:
+G_M17541_IG61:
xor edi, edi
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
mov qword ptr [rdx+0x20], rdi
mov qword ptr [rdx+0x28], rdi
mov qword ptr [rdx+0x30], rdi
- mov r8, gword ptr [rbp-0xB0]
- mov rdi, gword ptr [r8+0x28]
+ mov r15, gword ptr [rbp-0xD0]
+ mov rdi, gword ptr [r15+0x28]
inc dword ptr [rdi+0x14]
mov esi, dword ptr [rdi+0x10]
xor eax, eax
mov dword ptr [rdi+0x10], eax
test esi, esi
- jle SHORT G_M17541_IG65
+ jle SHORT G_M17541_IG62
mov rdi, gword ptr [rdi+0x08]
mov edx, esi
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
;; size=67 bbWeight=1 PerfScore 20.50
-G_M17541_IG65:
- mov rdx, bword ptr [rbp-0xA8]
+G_M17541_IG62:
+ mov rdx, bword ptr [rbp-0xC8]
cmp gword ptr [rdx+0x08], 0
- je SHORT G_M17541_IG67
+ je SHORT G_M17541_IG64
;; size=14 bbWeight=1 PerfScore 5.00
-G_M17541_IG66:
+G_M17541_IG63:
mov rdi, 0xD1FFAB1E ; System.AggregateException
call CORINFO_HELP_NEWSFAST
- mov rbx, rax
- mov rdx, bword ptr [rbp-0xA8]
+ mov r15, rax
+ mov rdx, bword ptr [rbp-0xC8]
mov rsi, gword ptr [rdx+0x08]
- mov rdi, rbx
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
call [rax]System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
- mov rdi, rbx
+ mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=53 bbWeight=0 PerfScore 0.00
-G_M17541_IG67:
- mov rdx, bword ptr [rbp-0xA8]
+G_M17541_IG64:
+ mov rdx, bword ptr [rbp-0xC8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
cmp gword ptr [rdi], 0
- jne SHORT G_M17541_IG68
+ jne SHORT G_M17541_IG65
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp SHORT G_M17541_IG69
+ jmp SHORT G_M17541_IG66
;; size=50 bbWeight=1 PerfScore 13.00
-G_M17541_IG68:
+G_M17541_IG65:
mov rdi, gword ptr [rdi]
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
;; size=20 bbWeight=1 PerfScore 6.50
-G_M17541_IG69:
+G_M17541_IG66:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M17541_IG70:
- add rsp, 192
+G_M17541_IG67:
+ vzeroupper
+ add rsp, 216
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=16 bbWeight=1 PerfScore 3.75
-G_M17541_IG71:
+ ;; size=21 bbWeight=1 PerfScore 5.25
+G_M17541_IG68:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=1 PerfScore 8.75
-G_M17541_IG72:
- cmp dword ptr [rbp-0x34], 0
- jge SHORT G_M17541_IG73
- cmp byte ptr [rbp-0x40], 0
- je SHORT G_M17541_IG73
- mov rdi, gword ptr [rbp-0xB8]
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=1 PerfScore 9.75
+G_M17541_IG69:
+ cmp dword ptr [rbp-0x3C], 0
+ jge SHORT G_M17541_IG70
+ cmp byte ptr [rbp-0x48], 0
+ je SHORT G_M17541_IG70
+ mov rdi, gword ptr [rbp-0xD8]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=1 PerfScore 8.00
-G_M17541_IG73:
+G_M17541_IG70:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M17541_IG74:
- add rsp, 16
+G_M17541_IG71:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=1 PerfScore 3.75
-G_M17541_IG75:
+ ;; size=18 bbWeight=1 PerfScore 5.25
+G_M17541_IG72:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=0 PerfScore 0.00
-G_M17541_IG76:
- cmp dword ptr [rbp-0x34], 0
- jge SHORT G_M17541_IG77
- cmp byte ptr [rbp-0x78], 0
- je SHORT G_M17541_IG77
- mov rdi, gword ptr [rbp-0xC0]
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M17541_IG73:
+ cmp dword ptr [rbp-0x3C], 0
+ jge SHORT G_M17541_IG74
+ cmp byte ptr [rbp-0x80], 0
+ je SHORT G_M17541_IG74
+ mov rdi, gword ptr [rbp-0xE0]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=0 PerfScore 0.00
-G_M17541_IG77:
+G_M17541_IG74:
nop
;; size=1 bbWeight=0 PerfScore 0.00
-G_M17541_IG78:
- add rsp, 16
+G_M17541_IG75:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0 PerfScore 0.00
-G_M17541_IG79:
+ ;; size=18 bbWeight=0 PerfScore 0.00
+G_M17541_IG76:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=0 PerfScore 0.00
-G_M17541_IG80:
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M17541_IG77:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M17541_IG81
+ jne SHORT G_M17541_IG78
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M17541_IG81:
- mov rdx, bword ptr [rbp-0xA8]
+G_M17541_IG78:
+ mov rdx, bword ptr [rbp-0xC8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M17541_IG82
+ jbe SHORT G_M17541_IG79
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M17541_IG83
+ jmp SHORT G_M17541_IG80
;; size=55 bbWeight=0 PerfScore 0.00
-G_M17541_IG82:
+G_M17541_IG79:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M17541_IG83:
- lea rax, G_M17541_IG33
+G_M17541_IG80:
+ lea rax, G_M17541_IG35
;; size=7 bbWeight=0 PerfScore 0.00
-G_M17541_IG84:
- add rsp, 16
+G_M17541_IG81:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0 PerfScore 0.00
-G_M17541_IG85:
+ ;; size=18 bbWeight=0 PerfScore 0.00
+G_M17541_IG82:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=0 PerfScore 0.00
-G_M17541_IG86:
- add rsp, 16
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M17541_IG83:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0 PerfScore 0.00
-G_M17541_IG87:
+ ;; size=18 bbWeight=0 PerfScore 0.00
+G_M17541_IG84:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=0 PerfScore 0.00
-G_M17541_IG88:
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M17541_IG85:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M17541_IG89
+ jne SHORT G_M17541_IG86
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0xA8]
+ mov rdx, bword ptr [rbp-0xC8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M17541_IG89:
- mov rdx, bword ptr [rbp-0xA8]
+G_M17541_IG86:
+ mov rdx, bword ptr [rbp-0xC8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M17541_IG90
+ jbe SHORT G_M17541_IG87
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M17541_IG91
+ jmp SHORT G_M17541_IG88
;; size=55 bbWeight=0 PerfScore 0.00
-G_M17541_IG90:
+G_M17541_IG87:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M17541_IG91:
+G_M17541_IG88:
lea rax, G_M17541_IG57
;; size=7 bbWeight=0 PerfScore 0.00
-G_M17541_IG92:
- add rsp, 16
+G_M17541_IG89:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0 PerfScore 0.00
-G_M17541_IG93:
+ ;; size=18 bbWeight=0 PerfScore 0.00
+G_M17541_IG90:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=1 PerfScore 8.75
-G_M17541_IG94:
- add rsp, 16
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=1 PerfScore 9.75
+G_M17541_IG91:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=1 PerfScore 3.75
-G_M17541_IG95:
+ ;; size=18 bbWeight=1 PerfScore 5.25
+G_M17541_IG92:
push rbp
push r15
push r14
push r13
+ push r12
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xE0]
- ;; size=28 bbWeight=0 PerfScore 0.00
-G_M17541_IG96:
- mov rdx, bword ptr [rbp-0xA8]
+ lea rbp, [rbp+0x100]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M17541_IG93:
+ mov rdx, bword ptr [rbp-0xC8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
- lea rax, G_M17541_IG69
+ lea rax, G_M17541_IG66
;; size=43 bbWeight=0 PerfScore 0.00
-G_M17541_IG97:
- add rsp, 16
+G_M17541_IG94:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0 PerfScore 0.00
+ ;; size=18 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2656, prolog size 95, PerfScore 1749.88, instruction count 661, allocated bytes for code 2656 (MethodHash=7e56bb7a) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[System.__Canon,System.Nullable`1[int]]:MoveNext():this (FullOpts)
+; Total bytes of code 2527, prolog size 101, PerfScore 1312.72, instruction count 635, allocated bytes for code 2527 (MethodHash=7e56bb7a) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[System.__Canon,System.Nullable`1[int]]:MoveNext():this (FullOpts)
-127 (-7.99 % of base) - System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this
; Assembly listing for method System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):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; 45 single block inlinees; 15 inlinees without PGO data
+; 0 inlinees with PGO data; 45 single block inlinees; 13 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T09] ( 10, 18 ) ref -> rbx this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
-; V01 arg1 [V01,T55] ( 4, 5 ) ref -> r14 class-hnd single-def <System.Reflection.Emit.TypeBuilderImpl>
+; V00 this [V00,T02] ( 10, 26 ) ref -> rbx this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
+; V01 arg1 [V01,T54] ( 4, 5 ) ref -> r14 class-hnd single-def <System.Reflection.Emit.TypeBuilderImpl>
; V02 arg2 [V02,T10] ( 9, 16 ) ref -> r15 class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
-;* V03 loc0 [V03 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.FieldBuilderImpl]>
-;* V04 loc1 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Reflection.Emit.FieldBuilderImpl>
+; V03 loc0 [V03 ] ( 7, 13 ) struct (24) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.FieldBuilderImpl]>
+; V04 loc1 [V04,T00] ( 17, 56 ) ref -> r13 class-hnd exact <System.Reflection.Emit.FieldBuilderImpl>
;* V05 loc2 [V05 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Metadata.FieldDefinitionHandle>
;# V06 OutArgs [V06 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V07 tmp1 [V07,T39] ( 2, 8 ) ref -> rsi class-hnd "impAppendStmt" <System.Type>
+; V07 tmp1 [V07,T12] ( 2, 16 ) ref -> rdi class-hnd "impAppendStmt" <System.Type>
;* V08 tmp2 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Type[]>
-; V09 tmp3 [V09,T40] ( 2, 8 ) ref -> rsi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
+; V09 tmp3 [V09,T13] ( 2, 16 ) ref -> rsi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
;* V10 tmp4 [V10 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V11 tmp5 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
;* V12 tmp6 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
;* V13 tmp7 [V13 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
;* V14 tmp8 [V14 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
;* V15 tmp9 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
;* V16 tmp10 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Single-def Box Helper" <System.Reflection.FieldAttributes>
-; V17 tmp11 [V17,T14] ( 3, 12 ) ref -> rcx class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V17 tmp11 [V17,T24] ( 3, 12 ) ref -> rsi class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
;* V18 tmp12 [V18 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
;* V19 tmp13 [V19 ] ( 0, 0 ) struct ( 8) zero-ref "non-inline candidate call" <System.Reflection.Metadata.EntityHandle>
-; V20 tmp14 [V20,T72] ( 2, 4 ) ref -> r13 class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.FieldBuilderImpl]>
+; V20 tmp14 [V20,T68] ( 2, 4 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.FieldBuilderImpl]>
;* V21 tmp15 [V21 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.FieldBuilderImpl]>
-; V22 tmp16 [V22,T41] ( 2, 8 ) ref -> rdx class-hnd "dup spill" <System.Type[]>
-; V23 tmp17 [V23,T29] ( 4, 8 ) ref -> rdx
-; V24 tmp18 [V24,T42] ( 2, 8 ) ref -> rcx class-hnd "dup spill" <System.Type[]>
-; V25 tmp19 [V25,T30] ( 4, 8 ) ref -> rcx
-; V26 tmp20 [V26,T15] ( 3, 12 ) ref -> [rbp-0x78] class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V27 tmp21 [V27,T48] ( 2, 8 ) int -> [rbp-0x2C] spill-single-def "impAppendStmt"
+; V22 tmp16 [V22,T14] ( 2, 16 ) ref -> rsi class-hnd "dup spill" <System.Type[]>
+; V23 tmp17 [V23,T21] ( 4, 14 ) ref -> rsi
+; V24 tmp18 [V24,T15] ( 2, 16 ) ref -> rdx class-hnd "dup spill" <System.Type[]>
+; V25 tmp19 [V25,T22] ( 4, 14 ) ref -> rdx
+; V26 tmp20 [V26,T08] ( 3, 24 ) ref -> [rbp-0x88] class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V27 tmp21 [V27,T17] ( 2, 16 ) int -> [rbp-0x44] spill-single-def "impAppendStmt"
;* V28 tmp22 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-; V29 tmp23 [V29,T43] ( 2, 8 ) ref -> [rbp-0x80] class-hnd spill-single-def "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
+; V29 tmp23 [V29,T16] ( 2, 16 ) ref -> r12 class-hnd "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
;* V30 tmp24 [V30 ] ( 0, 0 ) struct ( 8) zero-ref "impAppendStmt" <System.Reflection.Metadata.StringHandle>
;* V31 tmp25 [V31 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.BlobHandle>
-; V32 tmp26 [V32 ] ( 6, 12 ) struct (16) [rbp-0x40] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow>
-; V33 tmp27 [V33,T01] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow]>
-; V34 tmp28 [V34,T56] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow[]>
-; V35 tmp29 [V35,T31] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V32 tmp26 [V32 ] ( 6, 18 ) struct (16) [rbp-0x58] do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow>
+; V33 tmp27 [V33,T01] ( 7, 48 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow]>
+; V34 tmp28 [V34,T40] ( 3, 10 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow[]>
+; V35 tmp29 [V35,T23] ( 4, 12 ) int -> rdx "Inline stloc first use temp"
;* V36 tmp30 [V36 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow>
;* V37 tmp31 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow]>
;* V38 tmp32 [V38 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V39 tmp33 [V39 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.FieldDefinitionHandle>
;* V40 tmp34 [V40 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V41 tmp35 [V41 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V42 tmp36 [V42,T49] ( 2, 8 ) int -> rsi "Inlining Arg"
-; V43 tmp37 [V43,T44] ( 2, 8 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V43 tmp37 [V43,T45] ( 2, 8 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
;* V44 tmp38 [V44 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow>
-; V45 tmp39 [V45,T02] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]>
+; V45 tmp39 [V45,T03] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]>
;* V46 tmp40 [V46 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.FieldDefinitionHandle>
-; V47 tmp41 [V47,T57] ( 3, 6 ) ref -> rcx class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow[]>
-; V48 tmp42 [V48,T32] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V47 tmp41 [V47,T55] ( 3, 6 ) ref -> rax class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow[]>
+; V48 tmp42 [V48,T41] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V49 tmp43 [V49 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow>
;* V50 tmp44 [V50 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V51 tmp45 [V51 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V52 tmp46 [V52,T45] ( 2, 8 ) ref -> rsi class-hnd "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
-; V53 tmp47 [V53,T06] ( 6, 24 ) ref -> [rbp-0x88] class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+; V52 tmp46 [V52,T46] ( 2, 8 ) ref -> rsi class-hnd "Inlining Arg" <System.Reflection.Metadata.BlobBuilder>
+; V53 tmp47 [V53,T06] ( 6, 24 ) ref -> [rbp-0x90] class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
;* V54 tmp48 [V54 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Metadata.BlobHandle>
-; V55 tmp49 [V55,T33] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V55 tmp49 [V55,T42] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
;* V56 tmp50 [V56 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow>
-; V57 tmp51 [V57,T03] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow]>
+; V57 tmp51 [V57,T04] ( 7, 28 ) ref -> rdi class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow]>
;* V58 tmp52 [V58 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.EntityHandle>
;* V59 tmp53 [V59 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V60 tmp54 [V60,T58] ( 3, 6 ) ref -> rcx class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow[]>
-; V61 tmp55 [V61,T34] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V60 tmp54 [V60,T56] ( 3, 6 ) ref -> rcx class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow[]>
+; V61 tmp55 [V61,T43] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
;* V62 tmp56 [V62 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow>
;* V63 tmp57 [V63 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
;* V64 tmp58 [V64 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V65 tmp59 [V65,T07] ( 6, 24 ) ref -> [rbp-0x90] class-hnd "Inlining Arg" <System.Object>
+; V65 tmp59 [V65,T07] ( 6, 24 ) ref -> [rbp-0x98] class-hnd "Inlining Arg" <System.Object>
;* V66 tmp60 [V66 ] ( 0, 0 ) struct ( 8) zero-ref "location for address-of(RValue)" <System.Reflection.Metadata.ConstantHandle>
-; V67 tmp61 [V67,T26] ( 5, 10 ) ref -> [rbp-0x98] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
+; V67 tmp61 [V67,T35] ( 5, 10 ) ref -> [rbp-0xA0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
;* V68 tmp62 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.RuntimeType>
;* V69 tmp63 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType[]>
-; V70 tmp64 [V70,T73] ( 2, 4 ) ref -> [rbp-0xA0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
-; V71 tmp65 [V71,T50] ( 2, 8 ) int -> rdx "impAppendStmt"
-; V72 tmp66 [V72,T20] ( 3, 12 ) int -> rdx "Inlining Arg"
+; V70 tmp64 [V70,T69] ( 2, 4 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.RuntimeType>
+; V71 tmp65 [V71,T50] ( 2, 8 ) int -> rdi "impAppendStmt"
+; V72 tmp66 [V72,T30] ( 3, 12 ) int -> rdi "Inlining Arg"
;* V73 tmp67 [V73 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow>
-; V74 tmp68 [V74,T04] ( 7, 28 ) ref -> rcx class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]>
+; V74 tmp68 [V74,T05] ( 7, 28 ) ref -> rax class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]>
;* V75 tmp69 [V75 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Reflection.Metadata.FieldDefinitionHandle>
-; V76 tmp70 [V76,T59] ( 3, 6 ) ref -> r8 class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow[]>
-; V77 tmp71 [V77,T35] ( 4, 8 ) int -> r9 "Inline stloc first use temp"
+; V76 tmp70 [V76,T57] ( 3, 6 ) ref -> rsi class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow[]>
+; V77 tmp71 [V77,T44] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V78 tmp72 [V78 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow>
-; V79 tmp73 [V79,T13] ( 4, 16 ) ref -> rsi class-hnd "Inlining Arg" <ubyte[]>
+; V79 tmp73 [V79,T11] ( 4, 16 ) ref -> rsi class-hnd "Inlining Arg" <ubyte[]>
;* V80 tmp74 [V80 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V81 tmp75 [V81 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
;* V82 tmp76 [V82 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V83 tmp77 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V84 tmp78 [V84 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V85 tmp79 [V85 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V86 tmp80 [V86 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V87 tmp81 [V87,T27] ( 5, 10 ) int -> rdx "Inline stloc first use temp"
+; V87 tmp81 [V87,T36] ( 5, 10 ) int -> rdx "Inline stloc first use temp"
;* V88 tmp82 [V88 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V89 tmp83 [V89,T63] ( 3, 6 ) int -> rsi "Inline return value spill temp"
-; V90 tmp84 [V90,T64] ( 3, 6 ) int -> rdi "Inline stloc first use temp"
-;* V91 tmp85 [V91,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V92 tmp86 [V92 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Emit.FieldBuilderImpl]>
-; V93 tmp87 [V93,T11] ( 4, 17 ) ref -> r13 single-def "field V03._list (fldOffset=0x0)" P-INDEP
-; V94 tmp88 [V94,T00] ( 16, 34 ) ref -> [rbp-0xA8] "field V03._current (fldOffset=0x8)" P-INDEP
-; V95 tmp89 [V95,T05] ( 6, 21 ) int -> [rbp-0x44] "field V03._index (fldOffset=0x10)" P-INDEP
-; V96 tmp90 [V96,T28] ( 2, 9 ) int -> r12 "field V03._version (fldOffset=0x14)" P-INDEP
-;* V97 tmp91 [V97 ] ( 0, 0 ) int -> zero-ref "field V05._rowId (fldOffset=0x0)" P-INDEP
-;* V98 tmp92 [V98 ] ( 0, 0 ) int -> zero-ref "field V10._vToken (fldOffset=0x0)" P-INDEP
-;* V99 tmp93 [V99 ] ( 0, 0 ) int -> zero-ref "field V18._vToken (fldOffset=0x0)" P-INDEP
-;* V100 tmp94 [V100 ] ( 0, 0 ) int -> zero-ref "field V19._vToken (fldOffset=0x0)" P-INDEP
-; V101 tmp95 [V101,T83] ( 3, 3 ) ref -> r13 single-def "field V21._list (fldOffset=0x0)" P-INDEP
-;* V102 tmp96 [V102 ] ( 0, 0 ) ref -> zero-ref single-def "field V21._current (fldOffset=0x8)" P-INDEP
-;* V103 tmp97 [V103,T86] ( 0, 0 ) int -> zero-ref "field V21._index (fldOffset=0x10)" P-INDEP
-; V104 tmp98 [V104,T84] ( 2, 2 ) int -> r12 "field V21._version (fldOffset=0x14)" P-INDEP
-; V105 tmp99 [V105,T76] ( 2, 4 ) int -> [rbp-0x48] spill-single-def "field V30._value (fldOffset=0x0)" P-INDEP
-; V106 tmp100 [V106,T77] ( 2, 4 ) int -> rax "field V31._value (fldOffset=0x0)" P-INDEP
-; V107 tmp101 [V107,T36] ( 4, 8 ) ushort -> [rbp-0x40] do-not-enreg[] "field V32.Flags (fldOffset=0x0)" P-DEP
-; V108 tmp102 [V108,T37] ( 4, 8 ) int -> [rbp-0x3C] do-not-enreg[] "field V32.Name (fldOffset=0x4)" P-DEP
-; V109 tmp103 [V109,T38] ( 4, 8 ) int -> [rbp-0x38] do-not-enreg[] "field V32.Signature (fldOffset=0x8)" P-DEP
-;* V110 tmp104 [V110 ] ( 0, 0 ) ushort -> zero-ref "field V36.Flags (fldOffset=0x0)" P-INDEP
-;* V111 tmp105 [V111 ] ( 0, 0 ) int -> zero-ref "field V36.Name (fldOffset=0x4)" P-INDEP
-;* V112 tmp106 [V112 ] ( 0, 0 ) int -> zero-ref "field V36.Signature (fldOffset=0x8)" P-INDEP
-; V113 tmp107 [V113,T12] ( 7, 14 ) int -> [rbp-0x4C] "field V39._rowId (fldOffset=0x0)" P-INDEP
-; V114 tmp108 [V114,T78] ( 2, 4 ) int -> rdx "field V40._vToken (fldOffset=0x0)" P-INDEP
-; V115 tmp109 [V115,T65] ( 3, 6 ) int -> rsi "field V44.Offset (fldOffset=0x0)" P-INDEP
-;* V116 tmp110 [V116,T85] ( 0, 0 ) int -> zero-ref "field V44.Field (fldOffset=0x4)" P-INDEP
-;* V117 tmp111 [V117 ] ( 0, 0 ) int -> zero-ref "field V46._rowId (fldOffset=0x0)" P-INDEP
-;* V118 tmp112 [V118 ] ( 0, 0 ) int -> zero-ref "field V49.Offset (fldOffset=0x0)" P-INDEP
-;* V119 tmp113 [V119 ] ( 0, 0 ) int -> zero-ref "field V49.Field (fldOffset=0x4)" P-INDEP
-; V120 tmp114 [V120,T66] ( 3, 6 ) int -> [rbp-0x50] spill-single-def "field V50._vToken (fldOffset=0x0)" P-INDEP
-; V121 tmp115 [V121,T79] ( 2, 4 ) int -> [rbp-0x54] spill-single-def "field V54._value (fldOffset=0x0)" P-INDEP
-; V122 tmp116 [V122,T67] ( 3, 6 ) int -> rsi "field V56.Parent (fldOffset=0x0)" P-INDEP
-; V123 tmp117 [V123,T68] ( 3, 6 ) int -> rax "field V56.NativeType (fldOffset=0x4)" P-INDEP
-;* V124 tmp118 [V124 ] ( 0, 0 ) int -> zero-ref "field V58._vToken (fldOffset=0x0)" P-INDEP
-;* V125 tmp119 [V125 ] ( 0, 0 ) int -> zero-ref "field V62.Parent (fldOffset=0x0)" P-INDEP
-;* V126 tmp120 [V126 ] ( 0, 0 ) int -> zero-ref "field V62.NativeType (fldOffset=0x4)" P-INDEP
-; V127 tmp121 [V127,T80] ( 2, 4 ) int -> [rbp-0x58] spill-single-def "field V63._vToken (fldOffset=0x0)" P-INDEP
-;* V128 tmp122 [V128 ] ( 0, 0 ) int -> zero-ref "field V66._rowId (fldOffset=0x0)" P-INDEP
-; V129 tmp123 [V129,T69] ( 3, 6 ) int -> rdx "field V73.Offset (fldOffset=0x0)" P-INDEP
-; V130 tmp124 [V130,T70] ( 3, 6 ) int -> rsi "field V73.Field (fldOffset=0x4)" P-INDEP
-;* V131 tmp125 [V131 ] ( 0, 0 ) int -> zero-ref "field V75._rowId (fldOffset=0x0)" P-INDEP
-;* V132 tmp126 [V132 ] ( 0, 0 ) int -> zero-ref "field V78.Offset (fldOffset=0x0)" P-INDEP
-;* V133 tmp127 [V133 ] ( 0, 0 ) int -> zero-ref "field V78.Field (fldOffset=0x4)" P-INDEP
-;* V134 tmp128 [V134 ] ( 0, 0 ) byref -> zero-ref "field V80._reference (fldOffset=0x0)" P-INDEP
-;* V135 tmp129 [V135 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
-;* V136 tmp130 [V136 ] ( 0, 0 ) byref -> zero-ref "field V81._reference (fldOffset=0x0)" P-INDEP
-;* V137 tmp131 [V137 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
-; V138 tmp132 [V138,T74] ( 2, 4 ) byref -> rdx "field V82._reference (fldOffset=0x0)" P-INDEP
-; V139 tmp133 [V139,T81] ( 2, 4 ) int -> rsi "field V82._length (fldOffset=0x8)" P-INDEP
-;* V140 tmp134 [V140 ] ( 0, 0 ) byref -> zero-ref "field V83._reference (fldOffset=0x0)" P-INDEP
-;* V141 tmp135 [V141 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
-; V142 tmp136 [V142,T75] ( 2, 4 ) byref -> rdx "field V84._reference (fldOffset=0x0)" P-INDEP
-; V143 tmp137 [V143,T82] ( 2, 4 ) int -> rax "field V84._length (fldOffset=0x8)" P-INDEP
-; V144 tmp138 [V144,T08] ( 3, 24 ) ref -> rsi "arr expr"
-; V145 tmp139 [V145,T21] ( 3, 12 ) struct ( 8) [rbp-0x60] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow>
-; V146 tmp140 [V146,T16] ( 3, 12 ) byref -> rdi "BlockOp address local"
-; V147 tmp141 [V147,T52] ( 2, 8 ) int -> rdi "Enum:HasFlag this temp"
-; V148 tmp142 [V148,T22] ( 3, 12 ) struct ( 8) [rbp-0x68] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow>
-; V149 tmp143 [V149,T17] ( 3, 12 ) byref -> rdi "BlockOp address local"
-; V150 tmp144 [V150,T53] ( 2, 8 ) int -> rdi "Enum:HasFlag this temp"
-; V151 tmp145 [V151,T18] ( 3, 12 ) ref -> [rbp-0xB0] spill-single-def "arr expr"
-; V152 tmp146 [V152,T23] ( 3, 12 ) int -> rax "index expr"
-; V153 tmp147 [V153,T46] ( 2, 8 ) ref -> rdx "argument with side effect"
-; V154 tmp148 [V154,T54] ( 2, 8 ) int -> rsi "Enum:HasFlag this temp"
-; V155 tmp149 [V155,T24] ( 3, 12 ) struct ( 8) [rbp-0x70] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow>
-; V156 tmp150 [V156,T19] ( 3, 12 ) byref -> rcx "BlockOp address local"
-; V157 cse0 [V157,T25] ( 2, 8 ) int -> rsi "CSE #13: moderate"
-; V158 cse1 [V158,T60] ( 3, 6 ) ref -> rdi "CSE #02: conservative"
-; V159 cse2 [V159,T71] ( 3, 6 ) int -> rsi "CSE #04: conservative"
-; V160 cse3 [V160,T61] ( 3, 6 ) ref -> rdi "CSE #07: conservative"
-; V161 cse4 [V161,T62] ( 3, 6 ) ref -> rdi "CSE #08: conservative"
-; V162 rat0 [V162,T47] ( 2, 8 ) ref -> [rbp-0xB8] spill-single-def "Spilling to split statement for tree"
+; V89 tmp83 [V89,T60] ( 3, 6 ) int -> rsi "Inline return value spill temp"
+; V90 tmp84 [V90,T61] ( 3, 6 ) int -> rdi "Inline stloc first use temp"
+; V91 tmp85 [V91 ] ( 3, 6 ) ref -> [rbp-0x40] do-not-enreg[X] addr-exposed "field V03._list (fldOffset=0x0)" P-DEP
+; V92 tmp86 [V92 ] ( 4, 10 ) ref -> [rbp-0x38] do-not-enreg[X] addr-exposed "field V03._current (fldOffset=0x8)" P-DEP
+; V93 tmp87 [V93 ] ( 3, 6 ) int -> [rbp-0x30] do-not-enreg[X] addr-exposed "field V03._index (fldOffset=0x10)" P-DEP
+; V94 tmp88 [V94 ] ( 3, 6 ) int -> [rbp-0x2C] do-not-enreg[X] addr-exposed "field V03._version (fldOffset=0x14)" P-DEP
+;* V95 tmp89 [V95 ] ( 0, 0 ) int -> zero-ref "field V05._rowId (fldOffset=0x0)" P-INDEP
+;* V96 tmp90 [V96 ] ( 0, 0 ) int -> zero-ref "field V10._vToken (fldOffset=0x0)" P-INDEP
+;* V97 tmp91 [V97 ] ( 0, 0 ) int -> zero-ref "field V18._vToken (fldOffset=0x0)" P-INDEP
+;* V98 tmp92 [V98 ] ( 0, 0 ) int -> zero-ref "field V19._vToken (fldOffset=0x0)" P-INDEP
+; V99 tmp93 [V99,T76] ( 3, 3 ) ref -> rdi single-def "field V21._list (fldOffset=0x0)" P-INDEP
+;* V100 tmp94 [V100,T79] ( 0, 0 ) ref -> zero-ref single-def "field V21._current (fldOffset=0x8)" P-INDEP
+;* V101 tmp95 [V101,T80] ( 0, 0 ) int -> zero-ref "field V21._index (fldOffset=0x10)" P-INDEP
+; V102 tmp96 [V102,T77] ( 2, 2 ) int -> rsi "field V21._version (fldOffset=0x14)" P-INDEP
+; V103 tmp97 [V103,T51] ( 2, 8 ) int -> [rbp-0x5C] spill-single-def "field V30._value (fldOffset=0x0)" P-INDEP
+; V104 tmp98 [V104,T52] ( 2, 8 ) int -> rax "field V31._value (fldOffset=0x0)" P-INDEP
+; V105 tmp99 [V105,T37] ( 4, 10 ) ushort -> [rbp-0x58] do-not-enreg[] "field V32.Flags (fldOffset=0x0)" P-DEP
+; V106 tmp100 [V106,T38] ( 4, 10 ) int -> [rbp-0x54] do-not-enreg[] "field V32.Name (fldOffset=0x4)" P-DEP
+; V107 tmp101 [V107,T39] ( 4, 10 ) int -> [rbp-0x50] do-not-enreg[] "field V32.Signature (fldOffset=0x8)" P-DEP
+;* V108 tmp102 [V108 ] ( 0, 0 ) ushort -> zero-ref "field V36.Flags (fldOffset=0x0)" P-INDEP
+;* V109 tmp103 [V109 ] ( 0, 0 ) int -> zero-ref "field V36.Name (fldOffset=0x4)" P-INDEP
+;* V110 tmp104 [V110 ] ( 0, 0 ) int -> zero-ref "field V36.Signature (fldOffset=0x8)" P-INDEP
+; V111 tmp105 [V111,T09] ( 7, 18 ) int -> r12 "field V39._rowId (fldOffset=0x0)" P-INDEP
+; V112 tmp106 [V112,T53] ( 2, 8 ) int -> rdx "field V40._vToken (fldOffset=0x0)" P-INDEP
+; V113 tmp107 [V113,T62] ( 3, 6 ) int -> rsi "field V44.Offset (fldOffset=0x0)" P-INDEP
+;* V114 tmp108 [V114,T78] ( 0, 0 ) int -> zero-ref "field V44.Field (fldOffset=0x4)" P-INDEP
+;* V115 tmp109 [V115 ] ( 0, 0 ) int -> zero-ref "field V46._rowId (fldOffset=0x0)" P-INDEP
+;* V116 tmp110 [V116 ] ( 0, 0 ) int -> zero-ref "field V49.Offset (fldOffset=0x0)" P-INDEP
+;* V117 tmp111 [V117 ] ( 0, 0 ) int -> zero-ref "field V49.Field (fldOffset=0x4)" P-INDEP
+; V118 tmp112 [V118,T63] ( 3, 6 ) int -> [rbp-0x60] spill-single-def "field V50._vToken (fldOffset=0x0)" P-INDEP
+; V119 tmp113 [V119,T72] ( 2, 4 ) int -> [rbp-0x64] spill-single-def "field V54._value (fldOffset=0x0)" P-INDEP
+; V120 tmp114 [V120,T64] ( 3, 6 ) int -> rsi "field V56.Parent (fldOffset=0x0)" P-INDEP
+; V121 tmp115 [V121,T65] ( 3, 6 ) int -> rax "field V56.NativeType (fldOffset=0x4)" P-INDEP
+;* V122 tmp116 [V122 ] ( 0, 0 ) int -> zero-ref "field V58._vToken (fldOffset=0x0)" P-INDEP
+;* V123 tmp117 [V123 ] ( 0, 0 ) int -> zero-ref "field V62.Parent (fldOffset=0x0)" P-INDEP
+;* V124 tmp118 [V124 ] ( 0, 0 ) int -> zero-ref "field V62.NativeType (fldOffset=0x4)" P-INDEP
+; V125 tmp119 [V125,T73] ( 2, 4 ) int -> [rbp-0x68] spill-single-def "field V63._vToken (fldOffset=0x0)" P-INDEP
+;* V126 tmp120 [V126 ] ( 0, 0 ) int -> zero-ref "field V66._rowId (fldOffset=0x0)" P-INDEP
+; V127 tmp121 [V127,T66] ( 3, 6 ) int -> rdi "field V73.Offset (fldOffset=0x0)" P-INDEP
+; V128 tmp122 [V128,T67] ( 3, 6 ) int -> r12 "field V73.Field (fldOffset=0x4)" P-INDEP
+;* V129 tmp123 [V129 ] ( 0, 0 ) int -> zero-ref "field V75._rowId (fldOffset=0x0)" P-INDEP
+;* V130 tmp124 [V130 ] ( 0, 0 ) int -> zero-ref "field V78.Offset (fldOffset=0x0)" P-INDEP
+;* V131 tmp125 [V131 ] ( 0, 0 ) int -> zero-ref "field V78.Field (fldOffset=0x4)" P-INDEP
+;* V132 tmp126 [V132 ] ( 0, 0 ) byref -> zero-ref "field V80._reference (fldOffset=0x0)" P-INDEP
+;* V133 tmp127 [V133 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
+;* V134 tmp128 [V134 ] ( 0, 0 ) byref -> zero-ref "field V81._reference (fldOffset=0x0)" P-INDEP
+;* V135 tmp129 [V135 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
+; V136 tmp130 [V136,T70] ( 2, 4 ) byref -> rdx "field V82._reference (fldOffset=0x0)" P-INDEP
+; V137 tmp131 [V137,T74] ( 2, 4 ) int -> rsi "field V82._length (fldOffset=0x8)" P-INDEP
+;* V138 tmp132 [V138 ] ( 0, 0 ) byref -> zero-ref "field V83._reference (fldOffset=0x0)" P-INDEP
+;* V139 tmp133 [V139 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
+; V140 tmp134 [V140,T71] ( 2, 4 ) byref -> rdx "field V84._reference (fldOffset=0x0)" P-INDEP
+; V141 tmp135 [V141,T75] ( 2, 4 ) int -> rdi "field V84._length (fldOffset=0x8)" P-INDEP
+; V142 tmp136 [V142,T31] ( 3, 12 ) struct ( 8) [rbp-0x70] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow>
+; V143 tmp137 [V143,T25] ( 3, 12 ) byref -> rdi "BlockOp address local"
+; V144 tmp138 [V144,T18] ( 2, 16 ) int -> rdi "Enum:HasFlag this temp"
+; V145 tmp139 [V145,T32] ( 3, 12 ) struct ( 8) [rbp-0x78] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow>
+; V146 tmp140 [V146,T26] ( 3, 12 ) byref -> rdi "BlockOp address local"
+; V147 tmp141 [V147,T19] ( 2, 16 ) int -> rdi "Enum:HasFlag this temp"
+; V148 tmp142 [V148,T27] ( 3, 12 ) ref -> [rbp-0xB0] spill-single-def "arr expr"
+; V149 tmp143 [V149,T33] ( 3, 12 ) int -> rax "index expr"
+; V150 tmp144 [V150,T47] ( 2, 8 ) ref -> rdx "argument with side effect"
+; V151 tmp145 [V151,T20] ( 2, 16 ) int -> rsi "Enum:HasFlag this temp"
+; V152 tmp146 [V152,T34] ( 3, 12 ) struct ( 8) [rbp-0x80] do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow>
+; V153 tmp147 [V153,T28] ( 3, 12 ) byref -> rsi "BlockOp address local"
+; V154 cse0 [V154,T29] ( 3, 12 ) ref -> rdi "CSE #02: moderate"
+; V155 cse1 [V155,T58] ( 3, 6 ) ref -> rdi "CSE #07: conservative"
+; V156 cse2 [V156,T59] ( 3, 6 ) ref -> rdi "CSE #08: conservative"
+; V157 rat0 [V157,T48] ( 2, 8 ) ref -> [rbp-0xB8] spill-single-def "Spilling to split statement for tree"
;
; Lcl frame size = 152
G_M700_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 152
lea rbp, [rsp+0xC0]
+ vxorps xmm8, xmm8, xmm8
+ vmovdqa xmmword ptr [rbp-0x40], xmm8
+ xor eax, eax
+ mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r14, rsi
mov r15, rdx
- ;; size=34 bbWeight=1 PerfScore 7.50
+ ;; size=50 bbWeight=1 PerfScore 11.08
G_M700_IG02:
- mov r13, gword ptr [r14+0x50]
- mov r12d, dword ptr [r13+0x14]
- xor edi, edi
- jmp G_M700_IG24
- ;; size=15 bbWeight=1 PerfScore 6.25
+ mov rdi, gword ptr [r14+0x50]
+ mov esi, dword ptr [rdi+0x14]
+ mov gword ptr [rbp-0x40], rdi
+ xor rdi, rdi
+ mov gword ptr [rbp-0x38], rdi
+ ;; size=17 bbWeight=1 PerfScore 6.25
G_M700_IG03:
- mov rsi, gword ptr [rax+0x18]
- mov rdx, gword ptr [rax+0x20]
+ mov dword ptr [rbp-0x30], edi
+ mov dword ptr [rbp-0x2C], esi
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.FieldBuilderImpl]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ je G_M700_IG31
+ ;; size=40 bbWeight=1 PerfScore 7.25
+G_M700_IG04:
+ mov r13, gword ptr [rbp-0x38]
+ mov rdi, gword ptr [r13+0x18]
+ mov rsi, gword ptr [r13+0x20]
+ test rsi, rsi
+ jne SHORT G_M700_IG06
+ ;; size=17 bbWeight=4 PerfScore 25.00
+G_M700_IG05:
+ mov rsi, 0xD1FFAB1E ; const ptr
+ mov rsi, gword ptr [rsi]
+ ;; size=13 bbWeight=2 PerfScore 4.50
+G_M700_IG06:
+ mov rdx, gword ptr [r13+0x28]
test rdx, rdx
- jne SHORT G_M700_IG04
+ jne SHORT G_M700_IG08
+ ;; size=9 bbWeight=4 PerfScore 13.00
+G_M700_IG07:
mov rdx, 0xD1FFAB1E ; const ptr
mov rdx, gword ptr [rdx]
- ;; size=26 bbWeight=2 PerfScore 15.00
-G_M700_IG04:
- mov gword ptr [rbp-0xA8], rax
- mov rcx, gword ptr [rax+0x28]
- test rcx, rcx
- jne SHORT G_M700_IG05
- mov rcx, 0xD1FFAB1E ; const ptr
- mov rcx, gword ptr [rcx]
- ;; size=29 bbWeight=2 PerfScore 13.00
-G_M700_IG05:
- mov rdi, rsi
- mov rsi, rdx
- mov rdx, rcx
+ ;; size=13 bbWeight=2 PerfScore 4.50
+G_M700_IG08:
mov rcx, rbx
- mov r8, 0xD1FFAB1E ; code for System.Reflection.Emit.MetadataSignatureHelper:GetFieldSignature(System.Type,System.Type[],System.Type[],System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
- call [r8]System.Reflection.Emit.MetadataSignatureHelper:GetFieldSignature(System.Type,System.Type[],System.Type[],System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
- mov gword ptr [rbp-0x80], rax
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Emit.MetadataSignatureHelper:GetFieldSignature(System.Type,System.Type[],System.Type[],System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
+ call [rax]System.Reflection.Emit.MetadataSignatureHelper:GetFieldSignature(System.Type,System.Type[],System.Type[],System.Reflection.Emit.ModuleBuilderImpl):System.Reflection.Metadata.BlobBuilder
+ mov r12, rax
mov rdi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0x78], rdi
- mov rdx, gword ptr [rbp-0xA8]
- mov r8d, dword ptr [rdx+0x50]
- mov dword ptr [rbp-0x2C], r8d
- mov gword ptr [rbp-0xA8], rdx
- mov rsi, gword ptr [rdx+0x10]
- mov r9, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
+ mov gword ptr [rbp-0x88], rdi
+ mov ecx, dword ptr [r13+0x50]
+ mov dword ptr [rbp-0x44], ecx
+ mov rsi, gword ptr [r13+0x10]
+ mov rdx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
cmp dword ptr [rdi], edi
- call [r9]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
- mov dword ptr [rbp-0x48], eax
+ call [rdx]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
+ mov dword ptr [rbp-0x5C], eax
mov rdi, gword ptr [rbx+0x18]
- mov rsi, gword ptr [rbp-0x80]
+ mov rsi, r12
mov rcx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
cmp dword ptr [rdi], edi
call [rcx]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
- mov rcx, gword ptr [rbp-0x78]
- mov rdi, gword ptr [rcx+0x68]
- movzx rsi, word ptr [rbp-0x2C]
- mov word ptr [rbp-0x40], si
- mov esi, dword ptr [rbp-0x48]
- mov dword ptr [rbp-0x3C], esi
- mov dword ptr [rbp-0x38], eax
+ mov r12, gword ptr [rbp-0x88]
+ mov rdi, gword ptr [r12+0x68]
+ movzx rsi, word ptr [rbp-0x44]
+ mov word ptr [rbp-0x58], si
+ mov esi, dword ptr [rbp-0x5C]
+ mov dword ptr [rbp-0x54], esi
+ mov dword ptr [rbp-0x50], eax
inc dword ptr [rdi+0x14]
mov rsi, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
cmp dword ptr [rsi+0x08], edx
- jbe SHORT G_M700_IG06
+ jbe SHORT G_M700_IG10
+ ;; size=122 bbWeight=4 PerfScore 186.00
+G_M700_IG09:
lea eax, [rdx+0x01]
mov dword ptr [rdi+0x10], eax
+ mov edx, edx
lea rdx, [rdx+2*rdx]
- mov rdi, qword ptr [rbp-0x40]
+ mov rdi, qword ptr [rbp-0x58]
mov qword ptr [rsi+4*rdx+0x10], rdi
- mov edi, dword ptr [rbp-0x38]
+ mov edi, dword ptr [rbp-0x50]
mov dword ptr [rsi+4*rdx+0x18], edi
- jmp SHORT G_M700_IG07
- ;; size=171 bbWeight=2 PerfScore 117.50
-G_M700_IG06:
- mov rsi, qword ptr [rbp-0x40]
- mov edx, dword ptr [rbp-0x38]
+ jmp SHORT G_M700_IG11
+ ;; size=30 bbWeight=2 PerfScore 16.50
+G_M700_IG10:
+ mov rsi, qword ptr [rbp-0x58]
+ mov edx, dword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldDefRow):this
;; size=19 bbWeight=2 PerfScore 10.50
-G_M700_IG07:
- mov rcx, gword ptr [rbp-0x78]
- mov rdi, gword ptr [rcx+0x68]
- mov eax, dword ptr [rdi+0x10]
- mov rcx, gword ptr [rbp-0xA8]
- mov rsi, gword ptr [rcx+0x38]
- mov dword ptr [rbp-0x4C], eax
- mov edx, eax
+G_M700_IG11:
+ mov rdi, gword ptr [r12+0x68]
+ mov r12d, dword ptr [rdi+0x10]
+ mov rsi, gword ptr [r13+0x38]
+ mov edx, r12d
or edx, 0xD1FFAB1E
mov rdi, rbx
- mov r8, 0xD1FFAB1E ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
- call [r8]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
- mov rax, gword ptr [rbp-0xA8]
- mov esi, dword ptr [rax+0x54]
- test esi, esi
- jle SHORT G_M700_IG09
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
+ call [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
+ cmp dword ptr [r13+0x54], 0
+ jle SHORT G_M700_IG14
+ ;; size=44 bbWeight=4 PerfScore 56.00
+G_M700_IG12:
test byte ptr [r14+0x88], 16
- je SHORT G_M700_IG09
+ je SHORT G_M700_IG14
+ mov esi, dword ptr [r13+0x54]
mov rdi, gword ptr [rbx+0x18]
mov rdi, gword ptr [rdi+0x50]
inc dword ptr [rdi+0x14]
- mov rcx, gword ptr [rdi+0x08]
- mov edx, dword ptr [rdi+0x10]
- cmp dword ptr [rcx+0x08], edx
- jbe SHORT G_M700_IG08
- lea r8d, [rdx+0x01]
- mov dword ptr [rdi+0x10], r8d
- mov edi, edx
- lea rdi, bword ptr [rcx+8*rdi+0x10]
+ mov rax, gword ptr [rdi+0x08]
+ mov ecx, dword ptr [rdi+0x10]
+ cmp dword ptr [rax+0x08], ecx
+ jbe SHORT G_M700_IG13
+ lea edx, [rcx+0x01]
+ mov dword ptr [rdi+0x10], edx
+ mov edi, ecx
+ lea rdi, bword ptr [rax+8*rdi+0x10]
mov dword ptr [rdi], esi
- mov ecx, dword ptr [rbp-0x4C]
- mov dword ptr [rdi+0x04], ecx
- mov dword ptr [rbp-0x4C], ecx
- jmp SHORT G_M700_IG09
- ;; size=124 bbWeight=2 PerfScore 90.00
-G_M700_IG08:
- mov dword ptr [rbp-0x60], esi
- mov ecx, dword ptr [rbp-0x4C]
- mov dword ptr [rbp-0x5C], ecx
- mov rsi, qword ptr [rbp-0x60]
- mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow):this
- call [rdx]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow):this
- ;; size=25 bbWeight=2 PerfScore 14.50
-G_M700_IG09:
- mov rax, gword ptr [rbp-0xA8]
- mov edi, dword ptr [rax+0x50]
+ mov dword ptr [rdi+0x04], r12d
+ jmp SHORT G_M700_IG14
+ ;; size=58 bbWeight=2 PerfScore 55.50
+G_M700_IG13:
+ mov dword ptr [rbp-0x70], esi
+ mov dword ptr [rbp-0x6C], r12d
+ mov rsi, qword ptr [rbp-0x70]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow):this
+ call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldLayoutRow):this
+ ;; size=23 bbWeight=2 PerfScore 12.50
+G_M700_IG14:
+ mov edi, dword ptr [r13+0x50]
test edi, 0x1000
- je G_M700_IG13
- mov gword ptr [rbp-0xA8], rax
- mov rdi, gword ptr [rax+0x30]
+ je G_M700_IG17
+ ;; size=16 bbWeight=4 PerfScore 13.00
+G_M700_IG15:
+ mov rdi, gword ptr [r13+0x30]
test rdi, rdi
- je G_M700_IG11
- mov ecx, dword ptr [rbp-0x4C]
- mov edx, ecx
- or edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x50], edx
- mov rsi, 0xD1FFAB1E ; code for System.Reflection.Emit.MarshallingData:SerializeMarshallingData():System.Reflection.Metadata.BlobBuilder:this
+ je G_M700_IG17
+ mov eax, r12d
+ or eax, 0xD1FFAB1E
+ mov dword ptr [rbp-0x60], eax
+ mov rcx, 0xD1FFAB1E ; code for System.Reflection.Emit.MarshallingData:SerializeMarshallingData():System.Reflection.Metadata.BlobBuilder:this
cmp dword ptr [rdi], edi
- call [rsi]System.Reflection.Emit.MarshallingData:SerializeMarshallingData():System.Reflection.Metadata.BlobBuilder:this
+ call [rcx]System.Reflection.Emit.MarshallingData:SerializeMarshallingData():System.Reflection.Metadata.BlobBuilder:this
mov rsi, rax
mov rdi, gword ptr [rbx+0x18]
- mov gword ptr [rbp-0x88], rdi
+ mov gword ptr [rbp-0x90], rdi
mov rcx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
cmp dword ptr [rdi], edi
call [rcx]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddBlob(System.Reflection.Metadata.BlobBuilder):System.Reflection.Metadata.BlobHandle:this
- mov dword ptr [rbp-0x54], eax
- mov ecx, dword ptr [rbp-0x50]
+ mov dword ptr [rbp-0x64], eax
+ mov ecx, dword ptr [rbp-0x60]
mov edi, ecx
and edi, 0xD1FFAB1E
shr edi, 24
movzx rdi, dil
mov rdx, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.CodedIndex:ToHasFieldMarshalTag(ubyte):int
call [rdx]System.Reflection.Metadata.Ecma335.CodedIndex:ToHasFieldMarshalTag(ubyte):int
- mov esi, dword ptr [rbp-0x50]
+ mov esi, dword ptr [rbp-0x60]
and esi, 0xD1FFAB1E
add esi, esi
or esi, eax
- mov rdi, gword ptr [rbp-0x88]
+ mov rdi, gword ptr [rbp-0x90]
cmp esi, dword ptr [rdi+0x18C]
setl al
movzx rax, al
or byte ptr [rdi+0x1AB], al
mov dword ptr [rdi+0x18C], esi
mov rdi, gword ptr [rdi+0x58]
- mov eax, dword ptr [rbp-0x54]
+ mov eax, dword ptr [rbp-0x64]
inc dword ptr [rdi+0x14]
mov rcx, gword ptr [rdi+0x08]
mov edx, dword ptr [rdi+0x10]
cmp dword ptr [rcx+0x08], edx
- jbe SHORT G_M700_IG12
+ jbe SHORT G_M700_IG16
lea r8d, [rdx+0x01]
mov dword ptr [rdi+0x10], r8d
mov edi, edx
lea rdi, bword ptr [rcx+8*rdi+0x10]
mov dword ptr [rdi], esi
- ;; size=214 bbWeight=2 PerfScore 124.00
-G_M700_IG10:
mov dword ptr [rdi+0x04], eax
- mov rax, gword ptr [rbp-0xA8]
- jmp SHORT G_M700_IG13
- ;; size=12 bbWeight=2 PerfScore 8.00
-G_M700_IG11:
- mov rax, gword ptr [rbp-0xA8]
- jmp SHORT G_M700_IG13
- ;; size=9 bbWeight=1 PerfScore 3.00
-G_M700_IG12:
- mov dword ptr [rbp-0x68], esi
- mov dword ptr [rbp-0x64], eax
- mov rsi, qword ptr [rbp-0x68]
+ jmp SHORT G_M700_IG17
+ ;; size=187 bbWeight=2 PerfScore 117.50
+G_M700_IG16:
+ mov dword ptr [rbp-0x78], esi
+ mov dword ptr [rbp-0x74], eax
+ mov rsi, qword ptr [rbp-0x78]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldMarshalRow):this
- mov rax, gword ptr [rbp-0xA8]
- ;; size=29 bbWeight=2 PerfScore 14.50
-G_M700_IG13:
- mov edi, dword ptr [rax+0x50]
+ ;; size=22 bbWeight=2 PerfScore 12.50
+G_M700_IG17:
+ mov edi, dword ptr [r13+0x50]
test edi, 0x8000
- je G_M700_IG17
- mov rcx, gword ptr [rax+0x40]
- mov gword ptr [rbp-0xB8], rcx
+ je G_M700_IG22
+ ;; size=16 bbWeight=4 PerfScore 13.00
+G_M700_IG18:
+ mov rax, gword ptr [r13+0x40]
+ mov gword ptr [rbp-0xB8], rax
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M700_IG28
- ;; size=45 bbWeight=2 PerfScore 21.00
-G_M700_IG14:
+ je G_M700_IG33
+ ;; size=30 bbWeight=2 PerfScore 14.50
+G_M700_IG19:
mov rdi, 0xD1FFAB1E ; data for System.DBNull:Value
- cmp rcx, gword ptr [rdi]
- je G_M700_IG17
- mov ecx, dword ptr [rbp-0x4C]
- mov edx, ecx
- or edx, 0xD1FFAB1E
- mov dword ptr [rbp-0x58], edx
- mov gword ptr [rbp-0xA8], rax
- mov rsi, gword ptr [rax+0x40]
- test rsi, rsi
- je G_M700_IG19
- mov gword ptr [rbp-0x90], rsi
- mov rdi, rsi
+ cmp rax, gword ptr [rdi]
+ je G_M700_IG22
+ mov ecx, r12d
+ or ecx, 0xD1FFAB1E
+ mov dword ptr [rbp-0x68], ecx
+ mov rdx, gword ptr [r13+0x40]
+ test rdx, rdx
+ je G_M700_IG25
+ mov gword ptr [rbp-0x98], rdx
+ mov rdi, rdx
call System.Object:GetType():System.Type:this
- mov gword ptr [rbp-0x98], rax
+ mov gword ptr [rbp-0xA0], rax
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.RuntimeType:get_IsEnum():ubyte:this
call [rcx]System.RuntimeType:get_IsEnum():ubyte:this
test eax, eax
- je G_M700_IG18
- mov rdi, gword ptr [rbp-0x98]
+ je G_M700_IG24
+ mov rdi, gword ptr [rbp-0xA0]
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsActualEnum():ubyte:this
call [rax]System.RuntimeType:get_IsActualEnum():ubyte:this
test eax, eax
- je G_M700_IG30
+ je G_M700_IG35
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M700_IG29
- ;; size=144 bbWeight=2 PerfScore 57.50
-G_M700_IG15:
+ je G_M700_IG34
+ ;; size=135 bbWeight=2 PerfScore 53.50
+G_M700_IG20:
mov rdi, 0xD1FFAB1E ; data for System.Enum:s_underlyingTypes
mov rax, gword ptr [rdi]
mov gword ptr [rbp-0xB0], rax
- mov rcx, gword ptr [rbp-0x98]
+ mov rcx, gword ptr [rbp-0xA0]
mov rdi, qword ptr [rcx+0x18]
call System.Enum:InternalGetCorElementType(ulong):ubyte
mov rcx, gword ptr [rbp-0xB0]
cmp eax, dword ptr [rcx+0x08]
- jae G_M700_IG27
+ jae G_M700_IG32
mov eax, eax
mov rax, gword ptr [rcx+8*rax+0x10]
- mov gword ptr [rbp-0xA0], rax
+ mov gword ptr [rbp-0xA8], rax
mov rcx, 0xD1FFAB1E ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
call [rcx]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
mov rdx, rax
- mov rsi, gword ptr [rbp-0xA0]
- mov rdi, gword ptr [rbp-0x90]
+ mov rsi, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [rbp-0x98]
mov rax, 0xD1FFAB1E ; code for System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
call [rax]System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
- mov gword ptr [rbp-0x90], rax
- mov edx, dword ptr [rbp-0x58]
- ;; size=117 bbWeight=2 PerfScore 52.50
-G_M700_IG16:
+ mov rdx, rax
+ mov ecx, dword ptr [rbp-0x68]
+ ;; size=113 bbWeight=2 PerfScore 51.00
+G_M700_IG21:
mov rdi, gword ptr [rbx+0x18]
- mov esi, edx
- mov rdx, gword ptr [rbp-0x90]
- mov r8, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
+ mov esi, ecx
+ mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
cmp dword ptr [rdi], edi
- call [r8]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
- mov rax, gword ptr [rbp-0xA8]
- ;; size=35 bbWeight=2 PerfScore 21.00
-G_M700_IG17:
- mov esi, dword ptr [rax+0x50]
+ call [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddConstant(System.Reflection.Metadata.EntityHandle,System.Object):System.Reflection.Metadata.ConstantHandle:this
+ ;; size=20 bbWeight=2 PerfScore 17.00
+G_M700_IG22:
+ mov esi, dword ptr [r13+0x50]
test esi, 256
- mov edi, dword ptr [rbp-0x44]
- je G_M700_IG24
- mov esi, dword ptr [rbp-0x4C]
- cmp gword ptr [rax+0x48], 0
- mov gword ptr [rbp-0xA8], rax
- je G_M700_IG24
- mov rcx, gword ptr [rbx+0x18]
- mov edx, dword ptr [r15+0x18]
- mov r8d, dword ptr [r15+0x1C]
- and r8d, 0xD1FFAB1E
- add edx, r8d
- cmp byte ptr [rcx], cl
- test edx, edx
- jl G_M700_IG31
- mov rcx, gword ptr [rcx+0x60]
- inc dword ptr [rcx+0x14]
- mov r8, gword ptr [rcx+0x08]
- mov r9d, dword ptr [rcx+0x10]
- cmp dword ptr [r8+0x08], r9d
- jbe SHORT G_M700_IG20
- lea r10d, [r9+0x01]
- mov dword ptr [rcx+0x10], r10d
- mov ecx, r9d
- lea rcx, bword ptr [r8+8*rcx+0x10]
- mov dword ptr [rcx], edx
- mov dword ptr [rcx+0x04], esi
- jmp SHORT G_M700_IG21
- ;; size=115 bbWeight=2 PerfScore 81.50
-G_M700_IG18:
- mov edx, dword ptr [rbp-0x58]
- jmp G_M700_IG16
- ;; size=8 bbWeight=1 PerfScore 3.00
-G_M700_IG19:
- mov gword ptr [rbp-0x90], rsi
- mov edx, dword ptr [rbp-0x58]
- jmp G_M700_IG16
+ je G_M700_IG30
+ ;; size=16 bbWeight=4 PerfScore 13.00
+G_M700_IG23:
+ cmp gword ptr [r13+0x48], 0
+ je G_M700_IG30
+ mov rsi, gword ptr [rbx+0x18]
+ mov edi, dword ptr [r15+0x18]
+ mov eax, dword ptr [r15+0x1C]
+ and eax, 0xD1FFAB1E
+ add edi, eax
+ cmp byte ptr [rsi], sil
+ test edi, edi
+ jl G_M700_IG36
+ mov rax, gword ptr [rsi+0x60]
+ inc dword ptr [rax+0x14]
+ mov rsi, gword ptr [rax+0x08]
+ mov ecx, dword ptr [rax+0x10]
+ cmp dword ptr [rsi+0x08], ecx
+ jbe SHORT G_M700_IG26
+ lea edx, [rcx+0x01]
+ mov dword ptr [rax+0x10], edx
+ mov eax, ecx
+ lea rsi, bword ptr [rsi+8*rax+0x10]
+ mov dword ptr [rsi], edi
+ mov dword ptr [rsi+0x04], r12d
+ jmp SHORT G_M700_IG27
+ ;; size=81 bbWeight=2 PerfScore 69.00
+G_M700_IG24:
+ mov ecx, dword ptr [rbp-0x68]
+ mov rdx, gword ptr [rbp-0x98]
+ jmp G_M700_IG21
;; size=15 bbWeight=1 PerfScore 4.00
-G_M700_IG20:
- mov dword ptr [rbp-0x44], edi
- mov dword ptr [rbp-0x70], edx
- mov dword ptr [rbp-0x6C], esi
- mov rsi, qword ptr [rbp-0x70]
- mov rdi, rcx
- mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow):this
- call [rcx]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow):this
- mov edi, dword ptr [rbp-0x44]
- ;; size=31 bbWeight=2 PerfScore 17.00
-G_M700_IG21:
- mov rax, gword ptr [rbp-0xA8]
- mov rsi, gword ptr [rax+0x48]
+G_M700_IG25:
+ mov ecx, dword ptr [rbp-0x68]
+ jmp G_M700_IG21
+ ;; size=8 bbWeight=1 PerfScore 3.00
+G_M700_IG26:
+ mov dword ptr [rbp-0x80], edi
+ mov dword ptr [rbp-0x7C], r12d
+ mov rsi, qword ptr [rbp-0x80]
+ mov rdi, rax
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow):this
+ call [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+FieldRvaRow):this
+ ;; size=26 bbWeight=2 PerfScore 13.00
+G_M700_IG27:
+ mov rsi, gword ptr [r13+0x48]
test rsi, rsi
- je G_M700_IG32
+ je G_M700_IG37
lea rdx, bword ptr [rsi+0x10]
mov esi, dword ptr [rsi+0x08]
- mov eax, esi
+ mov edi, esi
test dword ptr [r15+0x1C], 0xD1FFAB1E
- jne G_M700_IG33
- mov dword ptr [rbp-0x44], edi
+ jne G_M700_IG38
mov rsi, rdx
- mov edx, eax
+ mov edx, edi
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.BlobBuilder:WriteBytesUnchecked(System.ReadOnlySpan`1[ubyte]):this
call [rax]System.Reflection.Metadata.BlobBuilder:WriteBytesUnchecked(System.ReadOnlySpan`1[ubyte]):this
mov edx, dword ptr [r15+0x18]
mov edi, dword ptr [r15+0x1C]
and edi, 0xD1FFAB1E
add edx, edi
mov edi, edx
and edi, -8
cmp edi, edx
- jne SHORT G_M700_IG22
+ jne SHORT G_M700_IG28
mov esi, edx
- jmp SHORT G_M700_IG23
- ;; size=95 bbWeight=2 PerfScore 49.00
-G_M700_IG22:
+ jmp SHORT G_M700_IG29
+ ;; size=85 bbWeight=2 PerfScore 45.00
+G_M700_IG28:
lea esi, [rdi+0x08]
;; size=3 bbWeight=2 PerfScore 1.00
-G_M700_IG23:
+G_M700_IG29:
sub esi, edx
mov edx, esi
mov rdi, r15
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Reflection.Metadata.BlobBuilder:WriteBytes(ubyte,int):this
call [rax]System.Reflection.Metadata.BlobBuilder:WriteBytes(ubyte,int):this
- mov edi, dword ptr [rbp-0x44]
- ;; size=24 bbWeight=2 PerfScore 10.50
-G_M700_IG24:
- cmp r12d, dword ptr [r13+0x14]
- jne G_M700_IG34
- ;; size=10 bbWeight=8 PerfScore 32.00
-G_M700_IG25:
- mov esi, dword ptr [r13+0x10]
- cmp edi, esi
- jae SHORT G_M700_IG26
- mov rsi, gword ptr [r13+0x08]
- cmp edi, dword ptr [rsi+0x08]
- jae SHORT G_M700_IG27
- mov edx, edi
- mov rax, gword ptr [rsi+8*rdx+0x10]
- inc edi
- mov dword ptr [rbp-0x44], edi
- jmp G_M700_IG03
- ;; size=34 bbWeight=4 PerfScore 59.00
-G_M700_IG26:
+ ;; size=21 bbWeight=2 PerfScore 8.50
+G_M700_IG30:
+ lea rdi, [rbp-0x40]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.FieldBuilderImpl]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M700_IG04
+ ;; size=34 bbWeight=4 PerfScore 21.00
+G_M700_IG31:
add rsp, 152
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=18 bbWeight=4 PerfScore 17.00
-G_M700_IG27:
+ ;; size=18 bbWeight=1 PerfScore 4.25
+G_M700_IG32:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-G_M700_IG28:
- mov gword ptr [rbp-0xA8], rax
+G_M700_IG33:
mov rdi, 0xD1FFAB1E
mov esi, 205
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
- mov rax, gword ptr [rbp-0xA8]
- mov rcx, gword ptr [rbp-0xB8]
- jmp G_M700_IG14
- ;; size=46 bbWeight=0 PerfScore 0.00
-G_M700_IG29:
+ mov rax, gword ptr [rbp-0xB8]
+ jmp G_M700_IG19
+ ;; size=32 bbWeight=0 PerfScore 0.00
+G_M700_IG34:
mov rdi, 0xD1FFAB1E
mov esi, 74
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
- jmp G_M700_IG15
+ jmp G_M700_IG20
;; size=25 bbWeight=0 PerfScore 0.00
-G_M700_IG30:
+G_M700_IG35:
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:ThrowMustBeEnum()
call [rax]System.RuntimeType:ThrowMustBeEnum()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M700_IG31:
+G_M700_IG36:
mov edi, 0x2B0F
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Reflection.Throw:ArgumentOutOfRange(System.String)
call [rax]System.Reflection.Throw:ArgumentOutOfRange(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M700_IG32:
+G_M700_IG37:
mov edi, 0x1E1B
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Reflection.Throw:ArgumentNull(System.String)
call [rax]System.Reflection.Throw:ArgumentNull(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M700_IG33:
+G_M700_IG38:
mov rax, 0xD1FFAB1E ; code for System.Reflection.Throw:InvalidOperationBuilderAlreadyLinked()
call [rax]System.Reflection.Throw:InvalidOperationBuilderAlreadyLinked()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M700_IG34:
- 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
-; Total bytes of code 1589, prolog size 25, PerfScore 849.75, instruction count 371, allocated bytes for code 1589 (MethodHash=3378fd43) for method System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this (FullOpts)
+; Total bytes of code 1462, prolog size 41, PerfScore 882.33, instruction count 342, allocated bytes for code 1462 (MethodHash=3378fd43) for method System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this (FullOpts)
-118 (-1.42 % of base) - System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this
; Assembly listing for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
-; 0 inlinees with PGO data; 229 single block inlinees; 194 inlinees without PGO data
+; 0 inlinees with PGO data; 229 single block inlinees; 191 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T192] ( 3, 3 ) ref -> rdi this class-hnd single-def <System.Diagnostics.Tracing.ManifestBuilder>
+; V00 this [V00,T182] ( 3, 3 ) ref -> rdi this class-hnd single-def <System.Diagnostics.Tracing.ManifestBuilder>
;* V01 loc0 [V01 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <System.Span`1[ushort]>
;* V02 loc1 [V02 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def ptr <System.Collections.Generic.List`1[int]>
-; V03 loc2 [V03,T187] ( 5, 5 ) ref -> r15 class-hnd exact single-def <System.String[]>
-; V04 loc3 [V04,T197] ( 4, 4 ) ref -> r14 class-hnd single-def <System.Globalization.CultureInfo>
+; V03 loc2 [V03,T177] ( 5, 5 ) ref -> r15 class-hnd exact single-def <System.String[]>
+; V04 loc3 [V04,T185] ( 4, 4 ) ref -> r14 class-hnd single-def <System.Globalization.CultureInfo>
;* V05 loc4 [V05 ] ( 0, 0 ) struct (16) zero-ref <System.Span`1[ushort]>
-; V06 loc5 [V06,T42] ( 10, 22 ) ref -> r14 class-hnd exact single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V06 loc5 [V06,T36] ( 10, 22 ) ref -> r14 class-hnd exact single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
; V07 loc6 [V07 ] ( 9, 15 ) struct (40) [rbp-0x78] do-not-enreg[XS] must-init addr-exposed ld-addr-op ptr <System.Collections.Generic.Dictionary`2+Enumerator[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
-;* V09 loc8 [V09 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V09 loc8 [V09 ] ( 8, 14.50) struct (32) [rbp-0x98] do-not-enreg[XS] must-init addr-exposed ld-addr-op ptr <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
;* V10 loc9 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
-; V11 loc10 [V11,T218] ( 2, 4 ) int -> [rbp-0x7C] spill-single-def ptr
-; V12 loc11 [V12,T90] ( 5, 10 ) ref -> [rbp-0x138] class-hnd exact spill-single-def ptr <System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo>
-; V13 loc12 [V13,T91] ( 5, 10 ) ref -> [rbp-0x140] class-hnd ptr <System.String>
-; V14 loc13 [V14,T179] ( 3, 6 ) ubyte -> [rbp-0x80] ptr
-; V15 loc14 [V15,T92] ( 4, 8 ) ref -> [rbp-0x148] class-hnd spill-single-def ptr <System.String>
-; V16 loc15 [V16,T100] ( 4, 8 ) ref -> [rbp-0x150] class-hnd exact spill-single-def ptr <System.Diagnostics.Tracing.EventChannelAttribute>
-; V17 loc16 [V17,T219] ( 2, 4 ) int -> [rbp-0x84] ld-addr-op spill-single-def ptr
+; V11 loc10 [V11,T176] ( 2, 6 ) int -> r13
+; V12 loc11 [V12,T37] ( 6, 20 ) ref -> r14 class-hnd exact <System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo>
+; V13 loc12 [V13,T56] ( 5, 14 ) ref -> registers class-hnd ptr <System.String>
+; V14 loc13 [V14,T112] ( 3, 8 ) ubyte -> [rbp-0x9C] ptr
+; V15 loc14 [V15,T57] ( 4, 10 ) ref -> [rbp-0x180] class-hnd spill-single-def ptr <System.String>
+; V16 loc15 [V16,T90] ( 4, 8 ) ref -> [rbp-0x188] class-hnd exact spill-single-def ptr <System.Diagnostics.Tracing.EventChannelAttribute>
+; V17 loc16 [V17,T206] ( 2, 4 ) int -> [rbp-0xA0] ld-addr-op spill-single-def ptr
;* V18 loc17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def ptr <System.Collections.Generic.List`1[int]>
-;* V19 loc18 [V19 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op <System.Collections.Generic.List`1+Enumerator[int]>
-;* V20 loc19 [V20 ] ( 0, 0 ) int -> zero-ref ptr
-; V21 loc20 [V21 ] ( 7, 10.50) struct (24) [rbp-0xA0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]>
+; V19 loc18 [V19 ] ( 7, 10.50) struct (24) [rbp-0xB8] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[int]>
+; V20 loc19 [V20,T87] ( 4, 10 ) int -> r14
+; V21 loc20 [V21 ] ( 7, 10.50) struct (24) [rbp-0xD0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]>
; V22 loc21 [V22,T12] ( 10, 40 ) ref -> r14 class-hnd <System.Type>
-; V23 loc22 [V23,T57] ( 3, 16 ) ubyte -> r13
-; V24 loc23 [V24,T63] ( 5, 12 ) ref -> r12 class-hnd <System.String>
-; V25 loc24 [V25,T122] ( 2, 8 ) ref -> rax class-hnd <System.Reflection.FieldInfo[]>
-; V26 loc25 [V26,T58] ( 3, 16 ) ubyte -> [rbp-0xA4]
-; V27 loc26 [V27,T15] ( 4, 40 ) ref -> [rbp-0x158] class-hnd spill-single-def ptr <System.Reflection.FieldInfo[]>
-;* V28 loc27 [V28,T221] ( 0, 0 ) int -> zero-ref ptr
-; V29 loc28 [V29,T03] ( 6, 72 ) ref -> [rbp-0x160] class-hnd spill-single-def ptr <System.Reflection.FieldInfo>
-; V30 loc29 [V30,T06] ( 5, 56 ) ref -> rax class-hnd <System.Object>
-; V31 loc30 [V31,T14] ( 5, 40 ) long -> rdi ld-addr-op
-; V32 loc31 [V32 ] ( 2, 16 ) int -> [rbp-0xB0] do-not-enreg[X] addr-exposed ld-addr-op ptr
+; V23 loc22 [V23,T53] ( 3, 16 ) ubyte -> r13
+; V24 loc23 [V24,T58] ( 5, 12 ) ref -> r12 class-hnd <System.String>
+; V25 loc24 [V25,T114] ( 2, 8 ) ref -> rax class-hnd <System.Reflection.FieldInfo[]>
+; V26 loc25 [V26,T54] ( 3, 16 ) ubyte -> [rbp-0xD4]
+; V27 loc26 [V27,T16] ( 4, 40 ) ref -> [rbp-0x190] class-hnd spill-single-def ptr <System.Reflection.FieldInfo[]>
+;* V28 loc27 [V28,T208] ( 0, 0 ) int -> zero-ref ptr
+; V29 loc28 [V29,T04] ( 6, 72 ) ref -> [rbp-0x198] class-hnd spill-single-def ptr <System.Reflection.FieldInfo>
+; V30 loc29 [V30,T07] ( 5, 56 ) ref -> rax class-hnd <System.Object>
+; V31 loc30 [V31,T15] ( 5, 40 ) long -> rdi ld-addr-op
+; V32 loc31 [V32 ] ( 2, 16 ) int -> [rbp-0xE0] do-not-enreg[X] addr-exposed ld-addr-op ptr
;* V33 loc32 [V33 ] ( 0, 0 ) struct (16) zero-ref <System.Span`1[ushort]>
-; V34 loc33 [V34 ] ( 7, 13 ) struct (24) [rbp-0xC8] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[int]>
-; V35 loc34 [V35,T98] ( 3, 10 ) int -> r14
+; V34 loc33 [V34 ] ( 7, 13 ) struct (24) [rbp-0xF8] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[int]>
+; V35 loc34 [V35,T89] ( 3, 10 ) int -> r14
;* V36 loc35 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def ptr <System.Collections.Generic.List`1[ulong]>
-; V37 loc36 [V37 ] ( 7, 10.50) struct (24) [rbp-0xE0] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[ulong]>
-; V38 loc37 [V38,T84] ( 3, 12 ) long -> r14 ld-addr-op
-; V39 loc38 [V39 ] ( 2, 8 ) int -> [rbp-0xE8] do-not-enreg[X] addr-exposed ld-addr-op ptr
+; V37 loc36 [V37 ] ( 7, 10.50) struct (24) [rbp-0x110] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[ulong]>
+; V38 loc37 [V38,T78] ( 3, 12 ) long -> r14 ld-addr-op
+; V39 loc38 [V39 ] ( 2, 8 ) int -> [rbp-0x118] do-not-enreg[X] addr-exposed ld-addr-op ptr
;* V40 loc39 [V40 ] ( 0, 0 ) struct (16) zero-ref <System.Span`1[ushort]>
-; V41 loc40 [V41,T95] ( 4, 10 ) ref -> r15 class-hnd exact single-def <System.String[]>
-;* V42 loc41 [V42,T293] ( 0, 0 ) int -> zero-ref ptr
-; V43 loc42 [V43,T48] ( 8, 16 ) ref -> r12 class-hnd exact <System.String>
+; V41 loc40 [V41,T86] ( 4, 10 ) ref -> r15 class-hnd exact single-def <System.String[]>
+;* V42 loc41 [V42,T281] ( 0, 0 ) int -> zero-ref ptr
+; V43 loc42 [V43,T44] ( 8, 16 ) ref -> r12 class-hnd exact <System.String>
;* V44 loc43 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd exact ptr <System.String>
; V45 OutArgs [V45 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V46 tmp1 [V46 ] ( 1, 1 ) struct (32) [rbp-0x50] do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "stackallocLocal"
;* V47 tmp2 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-; V48 tmp3 [V48,T139] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V48 tmp3 [V48,T130] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V49 tmp4 [V49 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V50 tmp5 [V50,T93] ( 5, 10 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[int]>
-; V51 tmp6 [V51,T44] ( 3, 20 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V50 tmp5 [V50,T84] ( 5, 10 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[int]>
+; V51 tmp6 [V51,T39] ( 3, 20 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V52 tmp7 [V52 ] ( 0, 0 ) ref -> zero-ref ptr
-; V53 tmp8 [V53,T32] ( 4, 24 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
-; V54 tmp9 [V54,T24] ( 5, 28 ) ref -> r13 class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V53 tmp8 [V53,T28] ( 4, 24 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
+; V54 tmp9 [V54,T25] ( 5, 28 ) ref -> r13 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V55 tmp10 [V55 ] ( 0, 0 ) ref -> zero-ref ptr
-; V56 tmp11 [V56,T140] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V56 tmp11 [V56,T131] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V57 tmp12 [V57 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V58 tmp13 [V58,T141] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V58 tmp13 [V58,T132] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V59 tmp14 [V59 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V60 tmp15 [V60,T193] ( 3, 5 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V60 tmp15 [V60,T183] ( 3, 5 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V61 tmp16 [V61 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V62 tmp17 [V62,T142] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V62 tmp17 [V62,T133] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V63 tmp18 [V63 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V64 tmp19 [V64,T143] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V64 tmp19 [V64,T134] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V65 tmp20 [V65 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V66 tmp21 [V66,T194] ( 3, 5 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V66 tmp21 [V66,T184] ( 3, 5 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V67 tmp22 [V67 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-;* V68 tmp23 [V68,T299] ( 0, 0 ) int -> zero-ref
-; V69 tmp24 [V69,T198] ( 4, 4 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+;* V68 tmp23 [V68,T287] ( 0, 0 ) int -> zero-ref
+; V69 tmp24 [V69,T186] ( 4, 4 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V70 tmp25 [V70 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V71 tmp26 [V71,T144] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V71 tmp26 [V71,T135] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V72 tmp27 [V72 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V73 tmp28 [V73,T145] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V73 tmp28 [V73,T136] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V74 tmp29 [V74 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V75 tmp30 [V75,T146] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V75 tmp30 [V75,T137] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V76 tmp31 [V76 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V77 tmp32 [V77,T147] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V77 tmp32 [V77,T138] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V78 tmp33 [V78 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V79 tmp34 [V79,T148] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V79 tmp34 [V79,T139] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V80 tmp35 [V80 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V81 tmp36 [V81,T149] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V81 tmp36 [V81,T140] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V82 tmp37 [V82 ] ( 0, 0 ) ref -> zero-ref single-def ptr
;* V83 tmp38 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.Text.StringBuilder>
-; V84 tmp39 [V84,T150] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V84 tmp39 [V84,T141] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V85 tmp40 [V85 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V86 tmp41 [V86,T33] ( 4, 24 ) ref -> [rbp-0x168] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V86 tmp41 [V86,T29] ( 4, 24 ) ref -> [rbp-0x1A0] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
;* V87 tmp42 [V87 ] ( 0, 0 ) ref -> zero-ref ptr
-; V88 tmp43 [V88,T151] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V88 tmp43 [V88,T142] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V89 tmp44 [V89 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V90 tmp45 [V90,T152] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V90 tmp45 [V90,T143] ( 4, 6 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V91 tmp46 [V91 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V92 tmp47 [V92,T153] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V92 tmp47 [V92,T144] ( 4, 6 ) ref -> r13 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V93 tmp48 [V93 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V94 tmp49 [V94,T154] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V94 tmp49 [V94,T145] ( 4, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V95 tmp50 [V95 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V96 tmp51 [V96,T155] ( 4, 6 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V96 tmp51 [V96,T146] ( 4, 6 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V97 tmp52 [V97 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V98 tmp53 [V98,T235] ( 3, 2 ) ref -> rax
-; V99 tmp54 [V99,T188] ( 5, 5 ) ref -> rax
-; V100 tmp55 [V100,T224] ( 3, 3 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V98 tmp53 [V98,T222] ( 3, 2 ) ref -> rax
+; V99 tmp54 [V99,T178] ( 5, 5 ) ref -> rax
+; V100 tmp55 [V100,T211] ( 3, 3 ) ref -> rdi class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V101 tmp56 [V101 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V102 tmp57 [V102,T199] ( 4, 4 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V102 tmp57 [V102,T187] ( 4, 4 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V103 tmp58 [V103 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V104 tmp59 [V104,T189] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ulong]>
-; V105 tmp60 [V105,T45] ( 3, 20 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V104 tmp59 [V104,T179] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ulong]>
+; V105 tmp60 [V105,T40] ( 3, 20 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V106 tmp61 [V106 ] ( 0, 0 ) ref -> zero-ref ptr
-; V107 tmp62 [V107,T34] ( 4, 24 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
+; V107 tmp62 [V107,T30] ( 4, 24 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
;* V108 tmp63 [V108 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.Span`1[ushort]>
;* V109 tmp64 [V109 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
; V110 tmp65 [V110,T13] ( 8, 40 ) ref -> r13 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V111 tmp66 [V111 ] ( 0, 0 ) ref -> zero-ref ptr
;* V112 tmp67 [V112 ] ( 0, 0 ) ref -> zero-ref class-hnd exact ptr "impAppendStmt" <System.Text.StringBuilder>
;* V113 tmp68 [V113 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-; V114 tmp69 [V114,T200] ( 4, 4 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V114 tmp69 [V114,T188] ( 4, 4 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V115 tmp70 [V115 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V116 tmp71 [V116,T87] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V116 tmp71 [V116,T79] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V117 tmp72 [V117 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V118 tmp73 [V118,T119] ( 3, 8 ) ref -> r12
-; V119 tmp74 [V119,T02] ( 19, 84 ) ref -> [rbp-0x170] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V118 tmp73 [V118,T110] ( 3, 8 ) ref -> r12
+; V119 tmp74 [V119,T01] ( 22, 96 ) ref -> [rbp-0x1A8] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
;* V120 tmp75 [V120 ] ( 0, 0 ) ref -> zero-ref ptr
;* V121 tmp76 [V121 ] ( 0, 0 ) ref -> zero-ref class-hnd exact ptr "non-inline candidate call" <System.Text.StringBuilder>
-;* V122 tmp77 [V122,T40] ( 0, 0 ) ref -> zero-ref class-hnd ptr "spilling qmarkNull" <System.UInt64>
+;* V122 tmp77 [V122,T34] ( 0, 0 ) ref -> zero-ref class-hnd ptr "spilling qmarkNull" <System.UInt64>
;* V123 tmp78 [V123 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.Span`1[ushort]>
;* V124 tmp79 [V124 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-; V125 tmp80 [V125,T01] ( 6, 96 ) ref -> [rbp-0x178] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V125 tmp80 [V125,T02] ( 6, 96 ) ref -> [rbp-0x1B0] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
;* V126 tmp81 [V126 ] ( 0, 0 ) ref -> zero-ref ptr
;* V127 tmp82 [V127 ] ( 0, 0 ) ref -> zero-ref class-hnd exact ptr "impAppendStmt" <System.Text.StringBuilder>
;* V128 tmp83 [V128 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V129 tmp84 [V129 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.Text.StringBuilder>
;* V130 tmp85 [V130 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.String>
;* V131 tmp86 [V131 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.String>
-; V132 tmp87 [V132,T07] ( 4, 64 ) ref -> [rbp-0x180] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V132 tmp87 [V132,T08] ( 4, 64 ) ref -> [rbp-0x1B8] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
;* V133 tmp88 [V133 ] ( 0, 0 ) ref -> zero-ref ptr
-; V134 tmp89 [V134,T35] ( 4, 24 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V134 tmp89 [V134,T31] ( 4, 24 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V135 tmp90 [V135 ] ( 0, 0 ) ref -> zero-ref ptr
-; V136 tmp91 [V136,T66] ( 3, 12 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V136 tmp91 [V136,T60] ( 3, 12 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V137 tmp92 [V137 ] ( 0, 0 ) ref -> zero-ref ptr
;* V138 tmp93 [V138 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.Text.StringBuilder>
-; V139 tmp94 [V139,T50] ( 4, 16 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V139 tmp94 [V139,T46] ( 4, 16 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V140 tmp95 [V140 ] ( 0, 0 ) ref -> zero-ref ptr
-; V141 tmp96 [V141,T201] ( 4, 4 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V141 tmp96 [V141,T189] ( 4, 4 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V142 tmp97 [V142 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V143 tmp98 [V143,T88] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V143 tmp98 [V143,T80] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V144 tmp99 [V144 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V145 tmp100 [V145,T190] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[int]>
-; V146 tmp101 [V146,T31] ( 6, 24 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
+; V145 tmp100 [V145,T180] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[int]>
+; V146 tmp101 [V146,T19] ( 6, 32 ) ref -> rdi class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V147 tmp102 [V147 ] ( 0, 0 ) ref -> zero-ref ptr
-; V148 tmp103 [V148,T10] ( 11, 44 ) ref -> [rbp-0x188] class-hnd exact spill-single-def ptr "impAppendStmt" <System.Text.StringBuilder>
-; V149 tmp104 [V149,T17] ( 8, 32 ) ref -> [rbp-0x190] class-hnd exact ptr "dup spill" <System.Text.StringBuilder>
+; V148 tmp103 [V148,T09] ( 11, 52 ) ref -> r13 class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
+; V149 tmp104 [V149,T14] ( 8, 40 ) ref -> r13 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V150 tmp105 [V150 ] ( 0, 0 ) ref -> zero-ref ptr
-; V151 tmp106 [V151,T29] ( 10, 24 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V151 tmp106 [V151,T81] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V152 tmp107 [V152 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V153 tmp108 [V153,T89] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V153 tmp108 [V153,T82] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V154 tmp109 [V154 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V155 tmp110 [V155,T225] ( 3, 3 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
-; V156 tmp111 [V156,T236] ( 2, 2 ) ref -> rsi class-hnd single-def "dup spill" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V155 tmp110 [V155,T212] ( 3, 3 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V156 tmp111 [V156,T223] ( 2, 2 ) ref -> rsi class-hnd single-def "dup spill" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
;* V157 tmp112 [V157 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V158 tmp113 [V158,T234] ( 4, 2 ) ref -> rsi
-; V159 tmp114 [V159,T05] ( 16, 64 ) ref -> [rbp-0x198] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V158 tmp113 [V158,T221] ( 4, 2 ) ref -> rsi
+; V159 tmp114 [V159,T03] ( 16, 72 ) ref -> [rbp-0x1C0] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
;* V160 tmp115 [V160 ] ( 0, 0 ) ref -> zero-ref ptr
-; V161 tmp116 [V161,T23] ( 7, 28 ) ref -> [rbp-0x1A0] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V161 tmp116 [V161,T18] ( 7, 36 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V162 tmp117 [V162 ] ( 0, 0 ) ref -> zero-ref ptr
-; V163 tmp118 [V163,T08] ( 15, 60 ) ref -> [rbp-0x1A8] class-hnd exact ptr "dup spill" <System.Text.StringBuilder>
+; V163 tmp118 [V163,T05] ( 15, 68 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V164 tmp119 [V164 ] ( 0, 0 ) ref -> zero-ref ptr
;* V165 tmp120 [V165 ] ( 0, 0 ) ref -> zero-ref
;* V166 tmp121 [V166 ] ( 0, 0 ) ref -> zero-ref ptr
-; V167 tmp122 [V167,T94] ( 5, 10 ) ref -> rsi
-; V168 tmp123 [V168,T11] ( 11, 44 ) ref -> [rbp-0x1B0] class-hnd exact spill-single-def ptr "dup spill" <System.Text.StringBuilder>
+; V167 tmp122 [V167,T85] ( 5, 10 ) ref -> rsi
+; V168 tmp123 [V168,T11] ( 11, 44 ) ref -> r14 class-hnd exact "dup spill" <System.Text.StringBuilder>
;* V169 tmp124 [V169 ] ( 0, 0 ) ref -> zero-ref ptr
-; V170 tmp125 [V170,T67] ( 3, 12 ) ref -> rax class-hnd exact "Single-def Box Helper" <System.Diagnostics.Tracing.EventChannelType>
-; V171 tmp126 [V171,T30] ( 10, 24 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
+; V170 tmp125 [V170,T61] ( 3, 12 ) ref -> rax class-hnd exact "Single-def Box Helper" <System.Diagnostics.Tracing.EventChannelType>
+; V171 tmp126 [V171,T83] ( 10, 10 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Text.StringBuilder>
;* V172 tmp127 [V172 ] ( 0, 0 ) ref -> zero-ref single-def ptr
-; V173 tmp128 [V173,T191] ( 5, 5 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
-; V174 tmp129 [V174,T250] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V175 tmp130 [V175,T263] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V176 tmp131 [V176,T226] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
-; V177 tmp132 [V177,T283] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
-; V178 tmp133 [V178,T251] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V179 tmp134 [V179,T264] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V180 tmp135 [V180,T237] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
+; V173 tmp128 [V173,T181] ( 5, 5 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V174 tmp129 [V174,T238] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V175 tmp130 [V175,T251] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V176 tmp131 [V176,T213] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
+; V177 tmp132 [V177,T271] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
+; V178 tmp133 [V178,T239] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V179 tmp134 [V179,T252] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V180 tmp135 [V180,T224] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
;* V181 tmp136 [V181 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-; V182 tmp137 [V182,T227] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
-; V183 tmp138 [V183,T247] ( 2, 2 ) struct (40) [rbp-0x110] do-not-enreg[SF] must-init ld-addr-op ptr "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
-; V184 tmp139 [V184,T96] ( 3, 10 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo][]>
-; V185 tmp140 [V185,T65] ( 4, 12 ) int -> rax "Inline stloc first use temp"
-; V186 tmp141 [V186,T228] ( 3, 3 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Diagnostics.Tracing.ManifestBuilder+<>c>
-;* V187 tmp142 [V187 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
-; V188 tmp143 [V188,T220] ( 2, 4 ) ubyte -> rax "Inline return value spill temp"
-;* V189 tmp144 [V189,T249] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.RuntimeType>
+; V182 tmp137 [V182,T214] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
+; V183 tmp138 [V183,T234] ( 2, 2 ) struct (40) [rbp-0x140] do-not-enreg[SF] must-init ld-addr-op ptr "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]>
+; V184 tmp139 [V184,T88] ( 3, 10 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo][]>
+; V185 tmp140 [V185,T59] ( 4, 12 ) int -> rax "Inline stloc first use temp"
+; V186 tmp141 [V186,T215] ( 3, 3 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Diagnostics.Tracing.ManifestBuilder+<>c>
+; V187 tmp142 [V187,T235] ( 2, 2 ) struct (32) [rbp-0x160] do-not-enreg[SF] must-init ld-addr-op ptr "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
+; V188 tmp143 [V188,T207] ( 2, 4 ) ubyte -> rax "Inline return value spill temp"
+;* V189 tmp144 [V189,T237] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.RuntimeType>
;* V190 tmp145 [V190 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.RuntimeType>
-; V191 tmp146 [V191 ] ( 2, 8 ) int -> [rbp-0x114] do-not-enreg[X] addr-exposed ld-addr-op ptr "Inlining Arg"
-; V192 tmp147 [V192,T156] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V193 tmp148 [V193,T103] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
-; V194 tmp149 [V194,T68] ( 3, 12 ) byref -> rdx "Inlining Arg"
-; V195 tmp150 [V195,T203] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V196 tmp151 [V196,T51] ( 4, 16 ) ref -> rdi class-hnd exact "Inlining Arg" <System.String>
-; V197 tmp152 [V197,T157] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V198 tmp153 [V198,T104] ( 4, 8 ) int -> r8 "Inline stloc first use temp"
-; V199 tmp154 [V199,T69] ( 3, 12 ) byref -> rdx "Inlining Arg"
-; V200 tmp155 [V200,T204] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V191 tmp146 [V191 ] ( 2, 8 ) int -> [rbp-0x164] do-not-enreg[X] addr-exposed ld-addr-op ptr "Inlining Arg"
+; V192 tmp147 [V192,T147] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V193 tmp148 [V193,T93] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
+; V194 tmp149 [V194,T62] ( 3, 12 ) byref -> rdx "Inlining Arg"
+; V195 tmp150 [V195,T191] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V196 tmp151 [V196,T47] ( 4, 16 ) ref -> rdi class-hnd exact "Inlining Arg" <System.String>
+; V197 tmp152 [V197,T148] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V198 tmp153 [V198,T94] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
+; V199 tmp154 [V199,T63] ( 3, 12 ) byref -> rdx "Inlining Arg"
+; V200 tmp155 [V200,T192] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
;* V201 tmp156 [V201 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.StringBuilder>
-; V202 tmp157 [V202,T180] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
-; V203 tmp158 [V203,T158] ( 3, 6 ) ref -> rdx class-hnd "Inline stloc first use temp" <ushort[]>
-; V204 tmp159 [V204,T159] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V205 tmp160 [V205,T105] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V206 tmp161 [V206,T70] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V207 tmp162 [V207,T205] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V202 tmp157 [V202,T169] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
+; V203 tmp158 [V203,T149] ( 3, 6 ) ref -> rcx class-hnd "Inline stloc first use temp" <ushort[]>
+; V204 tmp159 [V204,T150] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V205 tmp160 [V205,T95] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V206 tmp161 [V206,T64] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V207 tmp162 [V207,T193] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
;* V208 tmp163 [V208 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
-; V209 tmp164 [V209,T43] ( 5, 20 ) ref -> rax class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
-; V210 tmp165 [V210,T181] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
-; V211 tmp166 [V211,T160] ( 3, 6 ) ref -> rcx class-hnd "Inline stloc first use temp" <ushort[]>
-; V212 tmp167 [V212,T161] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V213 tmp168 [V213,T106] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
-; V214 tmp169 [V214,T71] ( 3, 12 ) byref -> rdx "Inlining Arg"
-; V215 tmp170 [V215,T206] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V209 tmp164 [V209,T38] ( 5, 20 ) ref -> rax class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V210 tmp165 [V210,T170] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
+; V211 tmp166 [V211,T151] ( 3, 6 ) ref -> rcx class-hnd "Inline stloc first use temp" <ushort[]>
+; V212 tmp167 [V212,T152] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V213 tmp168 [V213,T96] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V214 tmp169 [V214,T65] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V215 tmp170 [V215,T194] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
;* V216 tmp171 [V216 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.StringBuilder>
-; V217 tmp172 [V217,T182] ( 3, 6 ) int -> rax "Inline stloc first use temp"
-; V218 tmp173 [V218,T162] ( 3, 6 ) ref -> rcx class-hnd "Inline stloc first use temp" <ushort[]>
-; V219 tmp174 [V219,T163] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V220 tmp175 [V220,T107] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V221 tmp176 [V221,T72] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V222 tmp177 [V222,T207] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V223 tmp178 [V223,T164] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V224 tmp179 [V224,T108] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V225 tmp180 [V225,T73] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V226 tmp181 [V226,T208] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V227 tmp182 [V227,T165] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V228 tmp183 [V228,T109] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V229 tmp184 [V229,T123] ( 2, 8 ) byref -> rsi "Inlining Arg"
+; V217 tmp172 [V217,T171] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
+; V218 tmp173 [V218,T153] ( 3, 6 ) ref -> rax class-hnd "Inline stloc first use temp" <ushort[]>
+; V219 tmp174 [V219,T154] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V220 tmp175 [V220,T97] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V221 tmp176 [V221,T66] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V222 tmp177 [V222,T195] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V223 tmp178 [V223,T155] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V224 tmp179 [V224,T98] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V225 tmp180 [V225,T67] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V226 tmp181 [V226,T196] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V227 tmp182 [V227,T156] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V228 tmp183 [V228,T99] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V229 tmp184 [V229,T115] ( 2, 8 ) byref -> rsi "Inlining Arg"
;* V230 tmp185 [V230 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-;* V231 tmp186 [V231,T133] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V232 tmp187 [V232 ] ( 0, 0 ) ref -> zero-ref class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]>
-; V233 tmp188 [V233,T252] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V234 tmp189 [V234,T265] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V235 tmp190 [V235,T229] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
-; V236 tmp191 [V236,T284] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
-; V237 tmp192 [V237,T253] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V238 tmp193 [V238,T266] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V239 tmp194 [V239,T238] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
-;* V240 tmp195 [V240 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-; V241 tmp196 [V241,T254] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V242 tmp197 [V242,T267] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V243 tmp198 [V243,T230] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
-; V244 tmp199 [V244,T285] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
-; V245 tmp200 [V245,T255] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V246 tmp201 [V246,T268] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V247 tmp202 [V247,T239] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
-;* V248 tmp203 [V248 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-;* V249 tmp204 [V249 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[int]>
-; V250 tmp205 [V250,T166] ( 3, 6 ) ref -> rdx class-hnd "Inline stloc first use temp" <ushort[]>
-; V251 tmp206 [V251,T110] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
-; V252 tmp207 [V252,T74] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V253 tmp208 [V253,T209] ( 2, 4 ) byref -> rdx "Inline stloc first use temp"
-; V254 tmp209 [V254,T62] ( 6, 12 ) ref -> [rbp-0x1B8] class-hnd spill-single-def ptr "Inline return value spill temp" <System.String>
-; V255 tmp210 [V255,T75] ( 3, 12 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.Dictionary`2[int,System.String]>
-; V256 tmp211 [V256,T167] ( 3, 6 ) byref -> rax "Inline stloc first use temp"
-;* V257 tmp212 [V257 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.String>
-; V258 tmp213 [V258,T168] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V259 tmp214 [V259,T111] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V260 tmp215 [V260,T76] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V261 tmp216 [V261,T210] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-;* V262 tmp217 [V262 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
-; V263 tmp218 [V263,T112] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
-; V264 tmp219 [V264,T101] ( 4, 8 ) ref -> rdx class-hnd "Inline stloc first use temp" <ushort[]>
-; V265 tmp220 [V265,T169] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V266 tmp221 [V266,T113] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V267 tmp222 [V267,T77] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V268 tmp223 [V268,T211] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V269 tmp224 [V269,T16] ( 9, 36 ) ref -> [rbp-0x1C0] class-hnd exact spill-single-def ptr "Inlining Arg" <System.Text.StringBuilder>
-; V270 tmp225 [V270,T170] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V271 tmp226 [V271,T114] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V272 tmp227 [V272,T78] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V273 tmp228 [V273,T212] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V274 tmp229 [V274,T171] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V275 tmp230 [V275,T115] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V276 tmp231 [V276,T124] ( 2, 8 ) byref -> rsi "Inlining Arg"
-;* V277 tmp232 [V277 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-;* V278 tmp233 [V278,T134] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V279 tmp234 [V279 ] ( 0, 0 ) ref -> zero-ref class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[int]>
-; V280 tmp235 [V280,T256] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V281 tmp236 [V281,T269] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V282 tmp237 [V282,T231] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
-; V283 tmp238 [V283,T286] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
-; V284 tmp239 [V284,T257] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V285 tmp240 [V285,T270] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V286 tmp241 [V286,T240] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
-;* V287 tmp242 [V287 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-; V288 tmp243 [V288,T258] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V289 tmp244 [V289,T271] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V290 tmp245 [V290,T232] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
-; V291 tmp246 [V291,T287] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
-; V292 tmp247 [V292,T259] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
-; V293 tmp248 [V293,T272] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
-; V294 tmp249 [V294,T241] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
-;* V295 tmp250 [V295 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
-;* V296 tmp251 [V296 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Collections.Generic.Dictionary`2+ValueCollection[System.__Canon,System.__Canon]>
-;* V297 tmp252 [V297 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]>
-; V298 tmp253 [V298,T242] ( 2, 2 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]>
-; V299 tmp254 [V299,T172] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V300 tmp255 [V300,T116] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V301 tmp256 [V301,T79] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V302 tmp257 [V302,T213] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V303 tmp258 [V303,T173] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V304 tmp259 [V304,T117] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V305 tmp260 [V305,T80] ( 3, 12 ) byref -> rsi "Inlining Arg"
-; V306 tmp261 [V306,T214] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
-; V307 tmp262 [V307,T52] ( 4, 16 ) ref -> rsi class-hnd exact "Inlining Arg" <System.String>
-; V308 tmp263 [V308,T174] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
-; V309 tmp264 [V309,T118] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
-; V310 tmp265 [V310,T125] ( 2, 8 ) byref -> rsi "Inlining Arg"
-; V311 tmp266 [V311,T175] ( 3, 6 ) byref -> rdi "Inline stloc first use temp"
-;* V312 tmp267 [V312,T137] ( 0, 0 ) ubyte -> zero-ref ptr "Inline return value spill temp"
+; V231 tmp186 [V231,T240] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V232 tmp187 [V232,T253] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V233 tmp188 [V233,T216] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
+; V234 tmp189 [V234,T272] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
+; V235 tmp190 [V235,T241] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V236 tmp191 [V236,T254] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V237 tmp192 [V237,T225] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
+;* V238 tmp193 [V238 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+; V239 tmp194 [V239,T242] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V240 tmp195 [V240,T255] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V241 tmp196 [V241,T217] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
+; V242 tmp197 [V242,T273] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
+; V243 tmp198 [V243,T243] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V244 tmp199 [V244,T256] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V245 tmp200 [V245,T226] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
+;* V246 tmp201 [V246 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+;* V247 tmp202 [V247 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[int]>
+; V248 tmp203 [V248,T157] ( 3, 6 ) ref -> rdx class-hnd "Inline stloc first use temp" <ushort[]>
+; V249 tmp204 [V249,T100] ( 4, 8 ) int -> rax "Inline stloc first use temp"
+; V250 tmp205 [V250,T68] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V251 tmp206 [V251,T197] ( 2, 4 ) byref -> rdx "Inline stloc first use temp"
+; V252 tmp207 [V252,T42] ( 6, 18 ) ref -> r12 class-hnd "Inline return value spill temp" <System.String>
+; V253 tmp208 [V253,T32] ( 3, 24 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.Dictionary`2[int,System.String]>
+; V254 tmp209 [V254,T69] ( 3, 12 ) byref -> rax "Inline stloc first use temp"
+;* V255 tmp210 [V255 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.String>
+; V256 tmp211 [V256,T158] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V257 tmp212 [V257,T101] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V258 tmp213 [V258,T70] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V259 tmp214 [V259,T198] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+;* V260 tmp215 [V260 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
+; V261 tmp216 [V261,T102] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
+; V262 tmp217 [V262,T91] ( 4, 8 ) ref -> rax class-hnd "Inline stloc first use temp" <ushort[]>
+; V263 tmp218 [V263,T159] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V264 tmp219 [V264,T103] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V265 tmp220 [V265,T71] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V266 tmp221 [V266,T199] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V267 tmp222 [V267,T17] ( 9, 36 ) ref -> r14 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V268 tmp223 [V268,T160] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V269 tmp224 [V269,T104] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V270 tmp225 [V270,T72] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V271 tmp226 [V271,T200] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V272 tmp227 [V272,T161] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V273 tmp228 [V273,T105] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V274 tmp229 [V274,T116] ( 2, 8 ) byref -> rsi "Inlining Arg"
+;* V275 tmp230 [V275 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+; V276 tmp231 [V276,T244] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V277 tmp232 [V277,T257] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V278 tmp233 [V278,T218] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
+; V279 tmp234 [V279,T274] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
+; V280 tmp235 [V280,T245] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V281 tmp236 [V281,T258] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V282 tmp237 [V282,T227] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
+;* V283 tmp238 [V283 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+; V284 tmp239 [V284,T246] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V285 tmp240 [V285,T259] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V286 tmp241 [V286,T219] ( 3, 3 ) byref -> rsi single-def "Inlining Arg"
+; V287 tmp242 [V287,T275] ( 2, 1 ) byref -> rdi single-def "Inline stloc first use temp"
+; V288 tmp243 [V288,T247] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <ushort[]>
+; V289 tmp244 [V289,T260] ( 3, 1.50) int -> rdx "Inline stloc first use temp"
+; V290 tmp245 [V290,T228] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
+;* V291 tmp246 [V291 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+;* V292 tmp247 [V292 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Collections.Generic.Dictionary`2+ValueCollection[System.__Canon,System.__Canon]>
+;* V293 tmp248 [V293 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]>
+; V294 tmp249 [V294,T229] ( 2, 2 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]>
+; V295 tmp250 [V295,T162] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V296 tmp251 [V296,T106] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V297 tmp252 [V297,T73] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V298 tmp253 [V298,T201] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V299 tmp254 [V299,T163] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V300 tmp255 [V300,T107] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V301 tmp256 [V301,T74] ( 3, 12 ) byref -> rsi "Inlining Arg"
+; V302 tmp257 [V302,T202] ( 2, 4 ) byref -> rdi "Inline stloc first use temp"
+; V303 tmp258 [V303,T48] ( 4, 16 ) ref -> rsi class-hnd exact "Inlining Arg" <System.String>
+; V304 tmp259 [V304,T164] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V305 tmp260 [V305,T108] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V306 tmp261 [V306,T117] ( 2, 8 ) byref -> rsi "Inlining Arg"
+; V307 tmp262 [V307,T165] ( 3, 6 ) byref -> rdi "Inline stloc first use temp"
+; V308 tmp263 [V308,T166] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <ushort[]>
+; V309 tmp264 [V309,T109] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
+; V310 tmp265 [V310,T118] ( 2, 8 ) byref -> rsi "Inlining Arg"
+;* V311 tmp266 [V311 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp"
+;* V312 tmp267 [V312,T128] ( 0, 0 ) ubyte -> zero-ref ptr "Inline return value spill temp"
;* V313 tmp268 [V313 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V314 tmp269 [V314 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
;* V315 tmp270 [V315 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V316 tmp271 [V316 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V317 tmp272 [V317 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V318 tmp273 [V318 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V319 tmp274 [V319 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V320 tmp275 [V320 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V321 tmp276 [V321 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
;* V322 tmp277 [V322 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V323 tmp278 [V323 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
;* V324 tmp279 [V324 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V325 tmp280 [V325 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V326 tmp281 [V326 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V327 tmp282 [V327 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V328 tmp283 [V328 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
;* V329 tmp284 [V329 ] ( 0, 0 ) struct (16) zero-ref "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[ulong]>
;* V330 tmp285 [V330 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ulong]>
;* V331 tmp286 [V331 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V332 tmp287 [V332 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline stloc first use temp"
;* V333 tmp288 [V333 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
;* V334 tmp289 [V334 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V335 tmp290 [V335 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V336 tmp291 [V336 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ulong]>
;* V337 tmp292 [V337 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V338 tmp293 [V338 ] ( 0, 0 ) long -> zero-ref "Inline return value spill temp"
;* V339 tmp294 [V339 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V340 tmp295 [V340 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V341 tmp296 [V341 ] ( 0, 0 ) long -> zero-ref "dup spill"
;* V342 tmp297 [V342 ] ( 0, 0 ) struct (16) zero-ref "dup spill" <System.ValueTuple`2[ulong,ulong]>
;* V343 tmp298 [V343 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
;* V344 tmp299 [V344 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
;* V345 tmp300 [V345 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[ulong,ulong]>
;* V346 tmp301 [V346 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V347 tmp302 [V347 ] ( 0, 0 ) long -> zero-ref
;* V348 tmp303 [V348 ] ( 0, 0 ) long -> zero-ref ptr
;* V349 tmp304 [V349 ] ( 0, 0 ) ref -> zero-ref ptr
;* V350 tmp305 [V350 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V351 tmp306 [V351 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V352 tmp307 [V352 ] ( 0, 0 ) long -> zero-ref
;* V353 tmp308 [V353 ] ( 0, 0 ) long -> zero-ref ptr
;* V354 tmp309 [V354 ] ( 0, 0 ) ref -> zero-ref ptr
;* V355 tmp310 [V355 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V356 tmp311 [V356 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V357 tmp312 [V357 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V358 tmp313 [V358,T09] ( 3, 48 ) int -> [rbp-0x118] spill-single-def ptr "Inlining Arg"
+; V358 tmp313 [V358,T10] ( 3, 48 ) int -> [rbp-0x168] spill-single-def ptr "Inlining Arg"
;* V359 tmp314 [V359 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
;* V360 tmp315 [V360 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V361 tmp316 [V361 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V362 tmp317 [V362 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V363 tmp318 [V363 ] ( 0, 0 ) byref -> zero-ref ptr "Inlining Arg"
;* V364 tmp319 [V364 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
;* V365 tmp320 [V365 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V366 tmp321 [V366 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V367 tmp322 [V367,T53] ( 4, 16 ) ref -> r14 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V367 tmp322 [V367,T49] ( 4, 16 ) ref -> r14 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
;* V368 tmp323 [V368 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[int]>
-; V369 tmp324 [V369,T25] ( 4, 28 ) ref -> r12 class-hnd "Inlining Arg" <System.__Canon>
-; V370 tmp325 [V370,T54] ( 4, 16 ) ref -> r14 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V369 tmp324 [V369,T26] ( 4, 28 ) ref -> r12 class-hnd "Inlining Arg" <System.__Canon>
+; V370 tmp325 [V370,T50] ( 4, 16 ) ref -> r14 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
;* V371 tmp326 [V371 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ulong]>
-; V372 tmp327 [V372,T26] ( 4, 28 ) ref -> r12 class-hnd "Inlining Arg" <System.__Canon>
+; V372 tmp327 [V372,T27] ( 4, 28 ) ref -> r12 class-hnd "Inlining Arg" <System.__Canon>
;* V373 tmp328 [V373 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
;* V374 tmp329 [V374 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V375 tmp330 [V375 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V376 tmp331 [V376 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V377 tmp332 [V377 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V378 tmp333 [V378 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V379 tmp334 [V379 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V380 tmp335 [V380 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
;* V381 tmp336 [V381 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V382 tmp337 [V382 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
;* V383 tmp338 [V383 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V384 tmp339 [V384 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V385 tmp340 [V385 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ubyte]>
;* V386 tmp341 [V386 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V387 tmp342 [V387 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
;* V388 tmp343 [V388 ] ( 0, 0 ) struct (16) zero-ref "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[ulong]>
;* V389 tmp344 [V389 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ulong]>
;* V390 tmp345 [V390 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V391 tmp346 [V391 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inline stloc first use temp"
;* V392 tmp347 [V392 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
;* V393 tmp348 [V393 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V394 tmp349 [V394 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V395 tmp350 [V395 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ulong]>
;* V396 tmp351 [V396 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V397 tmp352 [V397 ] ( 0, 0 ) long -> zero-ref "Inline return value spill temp"
;* V398 tmp353 [V398 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V399 tmp354 [V399 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
;* V400 tmp355 [V400 ] ( 0, 0 ) long -> zero-ref "dup spill"
;* V401 tmp356 [V401 ] ( 0, 0 ) struct (16) zero-ref "dup spill" <System.ValueTuple`2[ulong,ulong]>
;* V402 tmp357 [V402 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
;* V403 tmp358 [V403 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
;* V404 tmp359 [V404 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[ulong,ulong]>
;* V405 tmp360 [V405 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V406 tmp361 [V406 ] ( 0, 0 ) long -> zero-ref
;* V407 tmp362 [V407 ] ( 0, 0 ) long -> zero-ref ptr
;* V408 tmp363 [V408 ] ( 0, 0 ) ref -> zero-ref ptr
;* V409 tmp364 [V409 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V410 tmp365 [V410 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V411 tmp366 [V411 ] ( 0, 0 ) long -> zero-ref
;* V412 tmp367 [V412 ] ( 0, 0 ) long -> zero-ref ptr
;* V413 tmp368 [V413 ] ( 0, 0 ) ref -> zero-ref ptr
;* V414 tmp369 [V414 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V415 tmp370 [V415 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V416 tmp371 [V416 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V417 tmp372 [V417,T46] ( 3, 20 ) int -> r14 "Inlining Arg"
+; V417 tmp372 [V417,T41] ( 3, 20 ) int -> r14 "Inlining Arg"
;* V418 tmp373 [V418 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
;* V419 tmp374 [V419 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V420 tmp375 [V420 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V421 tmp376 [V421 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V422 tmp377 [V422 ] ( 0, 0 ) byref -> zero-ref ptr "Inlining Arg"
;* V423 tmp378 [V423 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
;* V424 tmp379 [V424 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V425 tmp380 [V425 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V426 tmp381 [V426 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]>
-; V427 tmp382 [V427,T176] ( 3, 6 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]>
-; V428 tmp383 [V428,T215] ( 2, 4 ) ref -> r8 class-hnd exact single-def "Inlining Arg" <System.OrdinalCaseSensitiveComparer>
-; V429 tmp384 [V429,T202] ( 4, 4 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Text.StringBuilder>
+; V427 tmp382 [V427,T167] ( 3, 6 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]>
+; V428 tmp383 [V428,T203] ( 2, 4 ) ref -> r8 class-hnd exact single-def "Inlining Arg" <System.OrdinalCaseSensitiveComparer>
+; V429 tmp384 [V429,T190] ( 4, 4 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Text.StringBuilder>
;* V430 tmp385 [V430 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.String>
-; V431 tmp386 [V431,T49] ( 6, 16 ) ref -> [rbp-0x1C8] ld-addr-op class-hnd ptr "Inline stloc first use temp" <System.String>
-; V432 tmp387 [V432,T102] ( 4, 8 ) ref -> [rbp-0x1D0] class-hnd exact ptr "Inline stloc first use temp" <System.String>
+; V431 tmp386 [V431,T45] ( 6, 16 ) ref -> [rbp-0x1C8] ld-addr-op class-hnd ptr "Inline stloc first use temp" <System.String>
+; V432 tmp387 [V432,T92] ( 4, 8 ) ref -> [rbp-0x1D0] class-hnd exact ptr "Inline stloc first use temp" <System.String>
;* V433 tmp388 [V433 ] ( 0, 0 ) ref -> zero-ref ptr "spilling varStr"
-;* V434 tmp389 [V434,T222] ( 0, 0 ) int -> zero-ref ptr "spilling unroll qmark"
+;* V434 tmp389 [V434,T209] ( 0, 0 ) int -> zero-ref ptr "spilling unroll qmark"
;* V435 tmp390 [V435 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.String>
;* V436 tmp391 [V436 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V437 tmp392 [V437,T81] ( 3, 12 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.String]>
-; V438 tmp393 [V438,T177] ( 3, 6 ) byref -> rax "Inline stloc first use temp"
-; V439 tmp394 [V439,T55] ( 4, 16 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
-; V440 tmp395 [V440,T56] ( 4, 16 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
-; V441 tmp396 [V441,T41] ( 5, 23 ) byref -> r15 single-def "field V01._reference (fldOffset=0x0)" P-INDEP
-;* V442 tmp397 [V442,T294] ( 0, 0 ) int -> zero-ref "field V01._length (fldOffset=0x8)" P-INDEP
+; V437 tmp392 [V437,T75] ( 3, 12 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.String]>
+; V438 tmp393 [V438,T168] ( 3, 6 ) byref -> rax "Inline stloc first use temp"
+; V439 tmp394 [V439,T51] ( 4, 16 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V440 tmp395 [V440,T52] ( 4, 16 ) ref -> r12 class-hnd exact "Inlining Arg" <System.Text.StringBuilder>
+; V441 tmp396 [V441,T35] ( 5, 23 ) byref -> r15 single-def "field V01._reference (fldOffset=0x0)" P-INDEP
+;* V442 tmp397 [V442,T282] ( 0, 0 ) int -> zero-ref "field V01._length (fldOffset=0x8)" P-INDEP
;* V443 tmp398 [V443 ] ( 0, 0 ) byref -> zero-ref "field V05._reference (fldOffset=0x0)" P-INDEP
;* V444 tmp399 [V444 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-; V445 tmp400 [V445,T120] ( 3, 8 ) ref -> rsi "field V08.value (fldOffset=0x0)" P-INDEP
-; V446 tmp401 [V446,T121] ( 3, 8 ) int -> r13 "field V08.key (fldOffset=0x8)" P-INDEP
-;* V447 tmp402 [V447 ] ( 0, 0 ) ref -> zero-ref ptr "field V10.value (fldOffset=0x0)" P-INDEP
-;* V448 tmp403 [V448 ] ( 0, 0 ) int -> zero-ref ptr "field V10.key (fldOffset=0x8)" P-INDEP
-; V449 tmp404 [V449,T60] ( 4, 12.50) ref -> r14 single-def "field V19._list (fldOffset=0x0)" P-INDEP
-; V450 tmp405 [V450,T27] ( 6, 20.50) int -> r12 "field V19._index (fldOffset=0x8)" P-INDEP
-; V451 tmp406 [V451,T195] ( 2, 4.50) int -> r13 "field V19._version (fldOffset=0xc)" P-INDEP
-; V452 tmp407 [V452,T64] ( 4, 8 ) int -> [rbp-0x11C] ptr "field V19._current (fldOffset=0x10)" P-INDEP
-; V453 tmp408 [V453 ] ( 3, 5 ) ref -> [rbp-0xA0] do-not-enreg[X] addr-exposed ptr "field V21._dictionary (fldOffset=0x0)" P-DEP
-; V454 tmp409 [V454 ] ( 4, 9 ) ref -> [rbp-0x98] do-not-enreg[X] addr-exposed ptr "field V21._currentValue (fldOffset=0x8)" P-DEP
-; V455 tmp410 [V455 ] ( 3, 5 ) int -> [rbp-0x90] do-not-enreg[X] addr-exposed "field V21._index (fldOffset=0x10)" P-DEP
-; V456 tmp411 [V456 ] ( 3, 5 ) int -> [rbp-0x8C] do-not-enreg[X] addr-exposed ptr "field V21._version (fldOffset=0x14)" P-DEP
+; V445 tmp400 [V445,T111] ( 3, 8 ) ref -> rsi "field V08.value (fldOffset=0x0)" P-INDEP
+; V446 tmp401 [V446,T113] ( 3, 8 ) int -> r13 "field V08.key (fldOffset=0x8)" P-INDEP
+; V447 tmp402 [V447,T119] ( 2, 8 ) ref -> r14 "field V10.value (fldOffset=0x0)" P-INDEP
+; V448 tmp403 [V448,T127] ( 2, 8 ) int -> r13 "field V10.key (fldOffset=0x8)" P-INDEP
+; V449 tmp404 [V449 ] ( 3, 5 ) ref -> [rbp-0xB8] do-not-enreg[X] addr-exposed ptr "field V19._list (fldOffset=0x0)" P-DEP
+; V450 tmp405 [V450 ] ( 3, 5 ) int -> [rbp-0xB0] do-not-enreg[X] addr-exposed "field V19._index (fldOffset=0x8)" P-DEP
+; V451 tmp406 [V451 ] ( 3, 5 ) int -> [rbp-0xAC] do-not-enreg[X] addr-exposed ptr "field V19._version (fldOffset=0xc)" P-DEP
+; V452 tmp407 [V452 ] ( 4, 9 ) int -> [rbp-0xA8] do-not-enreg[X] addr-exposed ptr "field V19._current (fldOffset=0x10)" P-DEP
+; V453 tmp408 [V453 ] ( 3, 5 ) ref -> [rbp-0xD0] do-not-enreg[X] addr-exposed ptr "field V21._dictionary (fldOffset=0x0)" P-DEP
+; V454 tmp409 [V454 ] ( 4, 9 ) ref -> [rbp-0xC8] do-not-enreg[X] addr-exposed ptr "field V21._currentValue (fldOffset=0x8)" P-DEP
+; V455 tmp410 [V455 ] ( 3, 5 ) int -> [rbp-0xC0] do-not-enreg[X] addr-exposed "field V21._index (fldOffset=0x10)" P-DEP
+; V456 tmp411 [V456 ] ( 3, 5 ) int -> [rbp-0xBC] do-not-enreg[X] addr-exposed ptr "field V21._version (fldOffset=0x14)" P-DEP
;* V457 tmp412 [V457 ] ( 0, 0 ) byref -> zero-ref ptr "field V33._reference (fldOffset=0x0)" P-INDEP
;* V458 tmp413 [V458 ] ( 0, 0 ) int -> zero-ref ptr "field V33._length (fldOffset=0x8)" P-INDEP
-; V459 tmp414 [V459 ] ( 3, 6 ) ref -> [rbp-0xC8] do-not-enreg[X] addr-exposed ptr "field V34._list (fldOffset=0x0)" P-DEP
-; V460 tmp415 [V460 ] ( 3, 6 ) int -> [rbp-0xC0] do-not-enreg[X] addr-exposed "field V34._index (fldOffset=0x8)" P-DEP
-; V461 tmp416 [V461 ] ( 3, 6 ) int -> [rbp-0xBC] do-not-enreg[X] addr-exposed ptr "field V34._version (fldOffset=0xc)" P-DEP
-; V462 tmp417 [V462 ] ( 4, 10 ) int -> [rbp-0xB8] do-not-enreg[X] addr-exposed ptr "field V34._current (fldOffset=0x10)" P-DEP
-; V463 tmp418 [V463 ] ( 3, 5 ) ref -> [rbp-0xE0] do-not-enreg[X] addr-exposed ptr "field V37._list (fldOffset=0x0)" P-DEP
-; V464 tmp419 [V464 ] ( 4, 9 ) long -> [rbp-0xD8] do-not-enreg[X] addr-exposed ptr "field V37._current (fldOffset=0x8)" P-DEP
-; V465 tmp420 [V465 ] ( 3, 5 ) int -> [rbp-0xD0] do-not-enreg[X] addr-exposed "field V37._index (fldOffset=0x10)" P-DEP
-; V466 tmp421 [V466 ] ( 3, 5 ) int -> [rbp-0xCC] do-not-enreg[X] addr-exposed ptr "field V37._version (fldOffset=0x14)" P-DEP
+; V459 tmp414 [V459 ] ( 3, 6 ) ref -> [rbp-0xF8] do-not-enreg[X] addr-exposed ptr "field V34._list (fldOffset=0x0)" P-DEP
+; V460 tmp415 [V460 ] ( 3, 6 ) int -> [rbp-0xF0] do-not-enreg[X] addr-exposed "field V34._index (fldOffset=0x8)" P-DEP
+; V461 tmp416 [V461 ] ( 3, 6 ) int -> [rbp-0xEC] do-not-enreg[X] addr-exposed ptr "field V34._version (fldOffset=0xc)" P-DEP
+; V462 tmp417 [V462 ] ( 4, 10 ) int -> [rbp-0xE8] do-not-enreg[X] addr-exposed ptr "field V34._current (fldOffset=0x10)" P-DEP
+; V463 tmp418 [V463 ] ( 3, 5 ) ref -> [rbp-0x110] do-not-enreg[X] addr-exposed ptr "field V37._list (fldOffset=0x0)" P-DEP
+; V464 tmp419 [V464 ] ( 4, 9 ) long -> [rbp-0x108] do-not-enreg[X] addr-exposed ptr "field V37._current (fldOffset=0x8)" P-DEP
+; V465 tmp420 [V465 ] ( 3, 5 ) int -> [rbp-0x100] do-not-enreg[X] addr-exposed "field V37._index (fldOffset=0x10)" P-DEP
+; V466 tmp421 [V466 ] ( 3, 5 ) int -> [rbp-0xFC] do-not-enreg[X] addr-exposed ptr "field V37._version (fldOffset=0x14)" P-DEP
;* V467 tmp422 [V467 ] ( 0, 0 ) byref -> zero-ref ptr "field V40._reference (fldOffset=0x0)" P-INDEP
;* V468 tmp423 [V468 ] ( 0, 0 ) int -> zero-ref ptr "field V40._length (fldOffset=0x8)" P-INDEP
-; V469 tmp424 [V469,T243] ( 2, 2 ) byref -> r15 single-def "field V47._reference (fldOffset=0x0)" P-INDEP
-;* V470 tmp425 [V470,T295] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
+; V469 tmp424 [V469,T230] ( 2, 2 ) byref -> r15 single-def "field V47._reference (fldOffset=0x0)" P-INDEP
+;* V470 tmp425 [V470,T283] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
;* V471 tmp426 [V471 ] ( 0, 0 ) byref -> zero-ref ptr "field V108._reference (fldOffset=0x0)" P-INDEP
;* V472 tmp427 [V472 ] ( 0, 0 ) int -> zero-ref "field V108._length (fldOffset=0x8)" P-INDEP
;* V473 tmp428 [V473 ] ( 0, 0 ) byref -> zero-ref "field V109._reference (fldOffset=0x0)" P-INDEP
;* V474 tmp429 [V474 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
;* V475 tmp430 [V475 ] ( 0, 0 ) byref -> zero-ref "field V113._reference (fldOffset=0x0)" P-INDEP
;* V476 tmp431 [V476 ] ( 0, 0 ) int -> zero-ref "field V113._length (fldOffset=0x8)" P-INDEP
;* V477 tmp432 [V477 ] ( 0, 0 ) byref -> zero-ref ptr "field V123._reference (fldOffset=0x0)" P-INDEP
;* V478 tmp433 [V478 ] ( 0, 0 ) int -> zero-ref "field V123._length (fldOffset=0x8)" P-INDEP
;* V479 tmp434 [V479 ] ( 0, 0 ) byref -> zero-ref "field V124._reference (fldOffset=0x0)" P-INDEP
;* V480 tmp435 [V480 ] ( 0, 0 ) int -> zero-ref "field V124._length (fldOffset=0x8)" P-INDEP
;* V481 tmp436 [V481 ] ( 0, 0 ) byref -> zero-ref "field V128._reference (fldOffset=0x0)" P-INDEP
;* V482 tmp437 [V482 ] ( 0, 0 ) int -> zero-ref "field V128._length (fldOffset=0x8)" P-INDEP
-; V483 tmp438 [V483,T260] ( 3, 1.50) ref -> r14 single-def "field V249._list (fldOffset=0x0)" P-INDEP
-;* V484 tmp439 [V484,T300] ( 0, 0 ) int -> zero-ref ptr "field V249._index (fldOffset=0x8)" P-INDEP
-; V485 tmp440 [V485,T288] ( 2, 1 ) int -> r13 "field V249._version (fldOffset=0xc)" P-INDEP
-;* V486 tmp441 [V486 ] ( 0, 0 ) int -> zero-ref "field V249._current (fldOffset=0x10)" P-INDEP
-; V487 tmp442 [V487,T261] ( 3, 1.50) ref -> rdi single-def "field V297._dictionary (fldOffset=0x0)" P-INDEP
-;* V488 tmp443 [V488,T298] ( 0, 0 ) ref -> zero-ref single-def ptr "field V297._currentValue (fldOffset=0x8)" P-INDEP
-;* V489 tmp444 [V489,T301] ( 0, 0 ) int -> zero-ref "field V297._index (fldOffset=0x10)" P-INDEP
-; V490 tmp445 [V490,T289] ( 2, 1 ) int -> rsi "field V297._version (fldOffset=0x14)" P-INDEP
+; V483 tmp438 [V483,T248] ( 3, 1.50) ref -> r14 single-def "field V247._list (fldOffset=0x0)" P-INDEP
+;* V484 tmp439 [V484,T288] ( 0, 0 ) int -> zero-ref "field V247._index (fldOffset=0x8)" P-INDEP
+; V485 tmp440 [V485,T276] ( 2, 1 ) int -> rdi "field V247._version (fldOffset=0xc)" P-INDEP
+;* V486 tmp441 [V486,T289] ( 0, 0 ) int -> zero-ref ptr "field V247._current (fldOffset=0x10)" P-INDEP
+; V487 tmp442 [V487,T249] ( 3, 1.50) ref -> rdi single-def "field V293._dictionary (fldOffset=0x0)" P-INDEP
+;* V488 tmp443 [V488,T286] ( 0, 0 ) ref -> zero-ref single-def ptr "field V293._currentValue (fldOffset=0x8)" P-INDEP
+;* V489 tmp444 [V489,T290] ( 0, 0 ) int -> zero-ref "field V293._index (fldOffset=0x10)" P-INDEP
+; V490 tmp445 [V490,T277] ( 2, 1 ) int -> rsi "field V293._version (fldOffset=0x14)" P-INDEP
;* V491 tmp446 [V491 ] ( 0, 0 ) byref -> zero-ref "field V314._reference (fldOffset=0x0)" P-INDEP
;* V492 tmp447 [V492 ] ( 0, 0 ) int -> zero-ref "field V314._length (fldOffset=0x8)" P-INDEP
-; V493 tmp448 [V493,T59] ( 2, 16 ) byref -> rsi "field V315._reference (fldOffset=0x0)" P-INDEP
-;* V494 tmp449 [V494,T138] ( 0, 0 ) int -> zero-ref "field V315._length (fldOffset=0x8)" P-INDEP
+; V493 tmp448 [V493,T55] ( 2, 16 ) byref -> rsi "field V315._reference (fldOffset=0x0)" P-INDEP
+;* V494 tmp449 [V494,T129] ( 0, 0 ) int -> zero-ref "field V315._length (fldOffset=0x8)" P-INDEP
;* V495 tmp450 [V495 ] ( 0, 0 ) byref -> zero-ref "field V318._reference (fldOffset=0x0)" P-INDEP
;* V496 tmp451 [V496 ] ( 0, 0 ) int -> zero-ref "field V318._length (fldOffset=0x8)" P-INDEP
;* V497 tmp452 [V497 ] ( 0, 0 ) byref -> zero-ref ptr "field V322._reference (fldOffset=0x0)" P-INDEP
;* V498 tmp453 [V498 ] ( 0, 0 ) int -> zero-ref "field V322._length (fldOffset=0x8)" P-INDEP
;* V499 tmp454 [V499 ] ( 0, 0 ) byref -> zero-ref "field V326._reference (fldOffset=0x0)" P-INDEP
;* V500 tmp455 [V500 ] ( 0, 0 ) int -> zero-ref "field V326._length (fldOffset=0x8)" P-INDEP
;* V501 tmp456 [V501 ] ( 0, 0 ) byref -> zero-ref "field V329._reference (fldOffset=0x0)" P-INDEP
;* V502 tmp457 [V502 ] ( 0, 0 ) int -> zero-ref "field V329._length (fldOffset=0x8)" P-INDEP
;* V503 tmp458 [V503 ] ( 0, 0 ) byref -> zero-ref "field V330._reference (fldOffset=0x0)" P-INDEP
;* V504 tmp459 [V504 ] ( 0, 0 ) int -> zero-ref "field V330._length (fldOffset=0x8)" P-INDEP
;* V505 tmp460 [V505 ] ( 0, 0 ) byref -> zero-ref "field V333._reference (fldOffset=0x0)" P-INDEP
;* V506 tmp461 [V506 ] ( 0, 0 ) int -> zero-ref "field V333._length (fldOffset=0x8)" P-INDEP
;* V507 tmp462 [V507 ] ( 0, 0 ) byref -> zero-ref "field V336._reference (fldOffset=0x0)" P-INDEP
;* V508 tmp463 [V508 ] ( 0, 0 ) int -> zero-ref "field V336._length (fldOffset=0x8)" P-INDEP
;* V509 tmp464 [V509 ] ( 0, 0 ) byref -> zero-ref ptr "field V337._reference (fldOffset=0x0)" P-INDEP
;* V510 tmp465 [V510 ] ( 0, 0 ) int -> zero-ref "field V337._length (fldOffset=0x8)" P-INDEP
;* V511 tmp466 [V511 ] ( 0, 0 ) long -> zero-ref ptr "field V342.Item1 (fldOffset=0x0)" P-INDEP
;* V512 tmp467 [V512 ] ( 0, 0 ) long -> zero-ref ptr "field V342.Item2 (fldOffset=0x8)" P-INDEP
;* V513 tmp468 [V513 ] ( 0, 0 ) long -> zero-ref ptr "field V345.Item1 (fldOffset=0x0)" P-INDEP
;* V514 tmp469 [V514 ] ( 0, 0 ) long -> zero-ref ptr "field V345.Item2 (fldOffset=0x8)" P-INDEP
;* V515 tmp470 [V515 ] ( 0, 0 ) byref -> zero-ref ptr "field V359._reference (fldOffset=0x0)" P-INDEP
;* V516 tmp471 [V516 ] ( 0, 0 ) int -> zero-ref ptr "field V359._length (fldOffset=0x8)" P-INDEP
;* V517 tmp472 [V517 ] ( 0, 0 ) byref -> zero-ref ptr "field V361._reference (fldOffset=0x0)" P-INDEP
;* V518 tmp473 [V518 ] ( 0, 0 ) int -> zero-ref ptr "field V361._length (fldOffset=0x8)" P-INDEP
;* V519 tmp474 [V519 ] ( 0, 0 ) byref -> zero-ref ptr "field V362._reference (fldOffset=0x0)" P-INDEP
;* V520 tmp475 [V520 ] ( 0, 0 ) int -> zero-ref ptr "field V362._length (fldOffset=0x8)" P-INDEP
;* V521 tmp476 [V521 ] ( 0, 0 ) byref -> zero-ref ptr "field V365._reference (fldOffset=0x0)" P-INDEP
;* V522 tmp477 [V522 ] ( 0, 0 ) int -> zero-ref ptr "field V365._length (fldOffset=0x8)" P-INDEP
;* V523 tmp478 [V523 ] ( 0, 0 ) byref -> zero-ref ptr "field V366._reference (fldOffset=0x0)" P-INDEP
;* V524 tmp479 [V524 ] ( 0, 0 ) int -> zero-ref "field V366._length (fldOffset=0x8)" P-INDEP
-; V525 tmp480 [V525,T233] ( 3, 3 ) ref -> r14 single-def "field V368._list (fldOffset=0x0)" P-INDEP
-;* V526 tmp481 [V526,T296] ( 0, 0 ) int -> zero-ref "field V368._index (fldOffset=0x8)" P-INDEP
-; V527 tmp482 [V527,T248] ( 2, 2 ) int -> rdi "field V368._version (fldOffset=0xc)" P-INDEP
-;* V528 tmp483 [V528,T297] ( 0, 0 ) int -> zero-ref ptr "field V368._current (fldOffset=0x10)" P-INDEP
-; V529 tmp484 [V529,T262] ( 3, 1.50) ref -> r14 single-def "field V371._list (fldOffset=0x0)" P-INDEP
-;* V530 tmp485 [V530,T302] ( 0, 0 ) long -> zero-ref ptr "field V371._current (fldOffset=0x8)" P-INDEP
-;* V531 tmp486 [V531,T303] ( 0, 0 ) int -> zero-ref "field V371._index (fldOffset=0x10)" P-INDEP
-; V532 tmp487 [V532,T290] ( 2, 1 ) int -> rdi "field V371._version (fldOffset=0x14)" P-INDEP
+; V525 tmp480 [V525,T220] ( 3, 3 ) ref -> r14 single-def "field V368._list (fldOffset=0x0)" P-INDEP
+;* V526 tmp481 [V526,T284] ( 0, 0 ) int -> zero-ref "field V368._index (fldOffset=0x8)" P-INDEP
+; V527 tmp482 [V527,T236] ( 2, 2 ) int -> rdi "field V368._version (fldOffset=0xc)" P-INDEP
+;* V528 tmp483 [V528,T285] ( 0, 0 ) int -> zero-ref ptr "field V368._current (fldOffset=0x10)" P-INDEP
+; V529 tmp484 [V529,T250] ( 3, 1.50) ref -> r14 single-def "field V371._list (fldOffset=0x0)" P-INDEP
+;* V530 tmp485 [V530,T291] ( 0, 0 ) long -> zero-ref ptr "field V371._current (fldOffset=0x8)" P-INDEP
+;* V531 tmp486 [V531,T292] ( 0, 0 ) int -> zero-ref "field V371._index (fldOffset=0x10)" P-INDEP
+; V532 tmp487 [V532,T278] ( 2, 1 ) int -> rdi "field V371._version (fldOffset=0x14)" P-INDEP
;* V533 tmp488 [V533 ] ( 0, 0 ) byref -> zero-ref "field V373._reference (fldOffset=0x0)" P-INDEP
;* V534 tmp489 [V534 ] ( 0, 0 ) int -> zero-ref "field V373._length (fldOffset=0x8)" P-INDEP
-; V535 tmp490 [V535,T126] ( 2, 8 ) byref -> rsi "field V374._reference (fldOffset=0x0)" P-INDEP
-;* V536 tmp491 [V536,T223] ( 0, 0 ) int -> zero-ref "field V374._length (fldOffset=0x8)" P-INDEP
+; V535 tmp490 [V535,T120] ( 2, 8 ) byref -> rsi "field V374._reference (fldOffset=0x0)" P-INDEP
+;* V536 tmp491 [V536,T210] ( 0, 0 ) int -> zero-ref "field V374._length (fldOffset=0x8)" P-INDEP
;* V537 tmp492 [V537 ] ( 0, 0 ) byref -> zero-ref "field V377._reference (fldOffset=0x0)" P-INDEP
;* V538 tmp493 [V538 ] ( 0, 0 ) int -> zero-ref "field V377._length (fldOffset=0x8)" P-INDEP
;* V539 tmp494 [V539 ] ( 0, 0 ) byref -> zero-ref ptr "field V381._reference (fldOffset=0x0)" P-INDEP
;* V540 tmp495 [V540 ] ( 0, 0 ) int -> zero-ref "field V381._length (fldOffset=0x8)" P-INDEP
;* V541 tmp496 [V541 ] ( 0, 0 ) byref -> zero-ref "field V385._reference (fldOffset=0x0)" P-INDEP
;* V542 tmp497 [V542 ] ( 0, 0 ) int -> zero-ref "field V385._length (fldOffset=0x8)" P-INDEP
;* V543 tmp498 [V543 ] ( 0, 0 ) byref -> zero-ref "field V388._reference (fldOffset=0x0)" P-INDEP
;* V544 tmp499 [V544 ] ( 0, 0 ) int -> zero-ref "field V388._length (fldOffset=0x8)" P-INDEP
;* V545 tmp500 [V545 ] ( 0, 0 ) byref -> zero-ref "field V389._reference (fldOffset=0x0)" P-INDEP
;* V546 tmp501 [V546 ] ( 0, 0 ) int -> zero-ref "field V389._length (fldOffset=0x8)" P-INDEP
;* V547 tmp502 [V547 ] ( 0, 0 ) byref -> zero-ref "field V392._reference (fldOffset=0x0)" P-INDEP
;* V548 tmp503 [V548 ] ( 0, 0 ) int -> zero-ref "field V392._length (fldOffset=0x8)" P-INDEP
;* V549 tmp504 [V549 ] ( 0, 0 ) byref -> zero-ref "field V395._reference (fldOffset=0x0)" P-INDEP
;* V550 tmp505 [V550 ] ( 0, 0 ) int -> zero-ref "field V395._length (fldOffset=0x8)" P-INDEP
;* V551 tmp506 [V551 ] ( 0, 0 ) byref -> zero-ref ptr "field V396._reference (fldOffset=0x0)" P-INDEP
;* V552 tmp507 [V552 ] ( 0, 0 ) int -> zero-ref "field V396._length (fldOffset=0x8)" P-INDEP
;* V553 tmp508 [V553 ] ( 0, 0 ) long -> zero-ref ptr "field V401.Item1 (fldOffset=0x0)" P-INDEP
;* V554 tmp509 [V554 ] ( 0, 0 ) long -> zero-ref ptr "field V401.Item2 (fldOffset=0x8)" P-INDEP
;* V555 tmp510 [V555 ] ( 0, 0 ) long -> zero-ref ptr "field V404.Item1 (fldOffset=0x0)" P-INDEP
;* V556 tmp511 [V556 ] ( 0, 0 ) long -> zero-ref ptr "field V404.Item2 (fldOffset=0x8)" P-INDEP
;* V557 tmp512 [V557 ] ( 0, 0 ) byref -> zero-ref ptr "field V418._reference (fldOffset=0x0)" P-INDEP
;* V558 tmp513 [V558 ] ( 0, 0 ) int -> zero-ref ptr "field V418._length (fldOffset=0x8)" P-INDEP
;* V559 tmp514 [V559 ] ( 0, 0 ) byref -> zero-ref ptr "field V420._reference (fldOffset=0x0)" P-INDEP
;* V560 tmp515 [V560 ] ( 0, 0 ) int -> zero-ref ptr "field V420._length (fldOffset=0x8)" P-INDEP
;* V561 tmp516 [V561 ] ( 0, 0 ) byref -> zero-ref ptr "field V421._reference (fldOffset=0x0)" P-INDEP
;* V562 tmp517 [V562 ] ( 0, 0 ) int -> zero-ref ptr "field V421._length (fldOffset=0x8)" P-INDEP
;* V563 tmp518 [V563 ] ( 0, 0 ) byref -> zero-ref ptr "field V424._reference (fldOffset=0x0)" P-INDEP
;* V564 tmp519 [V564 ] ( 0, 0 ) int -> zero-ref ptr "field V424._length (fldOffset=0x8)" P-INDEP
;* V565 tmp520 [V565 ] ( 0, 0 ) byref -> zero-ref ptr "field V425._reference (fldOffset=0x0)" P-INDEP
;* V566 tmp521 [V566 ] ( 0, 0 ) int -> zero-ref "field V425._length (fldOffset=0x8)" P-INDEP
-; V567 tmp522 [V567,T61] ( 4, 12.50) ref -> r14 single-def "V09.[000..008)"
-; V568 tmp523 [V568,T28] ( 6, 20.50) int -> r12 "V09.[008..012)"
-; V569 tmp524 [V569,T196] ( 2, 4.50) int -> r13 "V09.[012..016)"
-; V570 tmp525 [V570,T97] ( 2, 6 ) ref -> rax "V09.[016..024)"
-; V571 tmp526 [V571,T99] ( 2, 6 ) int -> rcx "V09.[024..028)"
-;* V572 tmp527 [V572 ] ( 0, 0 ) ref -> zero-ref single-def ptr "V183.[000..008)"
-; V573 tmp528 [V573,T291] ( 2, 1 ) int -> rsi "V183.[008..012)"
-;* V574 tmp529 [V574 ] ( 0, 0 ) int -> zero-ref "V183.[012..016)"
-;* V575 tmp530 [V575 ] ( 0, 0 ) int -> zero-ref "V183.[016..020)"
-;* V576 tmp531 [V576 ] ( 0, 0 ) ref -> zero-ref single-def ptr "V187.[000..008)"
-;* V577 tmp532 [V577 ] ( 0, 0 ) int -> zero-ref "V187.[008..012)"
-; V578 tmp533 [V578,T292] ( 2, 1 ) int -> r13 "V187.[012..016)"
-;* V579 tmp534 [V579 ] ( 0, 0 ) ref -> zero-ref single-def "V187.[016..024)"
-;* V580 tmp535 [V580 ] ( 0, 0 ) int -> zero-ref "V187.[024..028)"
-; V581 tmp536 [V581,T36] ( 3, 24 ) byref -> rdi "Spilling address for field-by-field copy"
-; V582 tmp537 [V582,T82] ( 3, 12 ) byref -> r12 "BlockOp address local"
-; V583 tmp538 [V583,T37] ( 3, 24 ) ref -> rdi "arr expr"
-; V584 tmp539 [V584,T244] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V585 tmp540 [V585,T38] ( 3, 24 ) ref -> rdi "arr expr"
-;* V586 tmp541 [V586 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
-; V587 tmp542 [V587,T18] ( 2, 32 ) ref -> [rbp-0x1D8] spill-single-def "argument with side effect"
-; V588 tmp543 [V588,T19] ( 2, 32 ) ref -> rdx "argument with side effect"
-; V589 tmp544 [V589,T20] ( 2, 32 ) ref -> r8 "argument with side effect"
-; V590 tmp545 [V590,T21] ( 2, 32 ) ref -> [rbp-0x1E0] spill-single-def ptr "argument with side effect"
-; V591 tmp546 [V591,T22] ( 2, 32 ) ref -> [rbp-0x1E8] spill-single-def ptr "argument with side effect"
-; V592 tmp547 [V592,T127] ( 2, 8 ) ref -> rdi "argument with side effect"
-; V593 tmp548 [V593,T128] ( 2, 8 ) ref -> rcx "argument with side effect"
-; V594 tmp549 [V594,T129] ( 2, 8 ) ref -> r13 "argument with side effect"
-; V595 tmp550 [V595,T216] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
-; V596 tmp551 [V596,T130] ( 2, 8 ) ref -> rdi "argument with side effect"
-; V597 tmp552 [V597,T245] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V598 tmp553 [V598,T131] ( 2, 8 ) ref -> rdi "argument with side effect"
-;* V599 tmp554 [V599 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
-; V600 tmp555 [V600,T217] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
-; V601 tmp556 [V601,T246] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V602 tmp557 [V602,T83] ( 3, 12 ) ref -> rdi "argument with side effect"
-; V603 tmp558 [V603,T132] ( 2, 8 ) ref -> rdx "argument with side effect"
-; V604 GsCookie [V604 ] ( 1, 1 ) long -> [rbp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie"
-; V605 tmp560 [V605,T00] ( 84,182 ) ref -> rbx single-def "shadowVar"
-;* V606 cse0 [V606,T304] ( 0, 0 ) long -> zero-ref "CSE #05: conservative"
-; V607 cse1 [V607,T39] ( 3, 24 ) long -> [rbp-0x128] spill-single-def "CSE #62: conservative"
-; V608 cse2 [V608,T273] ( 3, 1.50) int -> rax "CSE #01: conservative"
-; V609 cse3 [V609,T274] ( 3, 1.50) int -> rax "CSE #02: conservative"
-; V610 cse4 [V610,T275] ( 3, 1.50) int -> rax "CSE #25: conservative"
-; V611 cse5 [V611,T276] ( 3, 1.50) int -> rax "CSE #26: conservative"
-; V612 cse6 [V612,T277] ( 3, 1.50) int -> rax "CSE #27: conservative"
-; V613 cse7 [V613,T278] ( 3, 1.50) int -> rax "CSE #28: conservative"
-; V614 cse8 [V614,T279] ( 3, 1.50) int -> rax "CSE #49: conservative"
-; V615 cse9 [V615,T280] ( 3, 1.50) int -> rax "CSE #50: conservative"
-; V616 cse10 [V616,T281] ( 3, 1.50) int -> rax "CSE #51: conservative"
-; V617 cse11 [V617,T282] ( 3, 1.50) int -> rax "CSE #52: conservative"
-; V618 cse12 [V618,T135] ( 2, 8 ) int -> rdi "CSE #23: conservative"
-; V619 cse13 [V619,T85] ( 2, 8 ) int -> rdi "CSE #24: conservative"
-; V620 cse14 [V620,T136] ( 2, 8 ) int -> rdi "CSE #40: conservative"
-; V621 cse15 [V621,T86] ( 2, 8 ) int -> rdi "CSE #41: conservative"
-; V622 cse16 [V622,T178] ( 3, 6 ) ref -> r8 "CSE #07: conservative"
-; V623 cse17 [V623,T183] ( 3, 6 ) int -> rdi "CSE #11: conservative"
-; V624 cse18 [V624,T184] ( 3, 6 ) int -> rdi "CSE #14: conservative"
-; V625 cse19 [V625,T185] ( 3, 6 ) int -> rdi "CSE #17: conservative"
-; V626 cse20 [V626,T186] ( 3, 6 ) int -> rdi "CSE #32: conservative"
-; V627 rat0 [V627,T04] ( 5, 68 ) long -> [rbp-0x130] "Widened IV V28"
-; V628 rat1 [V628,T47] ( 5, 17 ) long -> r13 "Widened IV V42"
+;* V567 tmp522 [V567 ] ( 0, 0 ) ref -> zero-ref single-def ptr "V183.[000..008)"
+; V568 tmp523 [V568,T279] ( 2, 1 ) int -> rsi "V183.[008..012)"
+;* V569 tmp524 [V569 ] ( 0, 0 ) int -> zero-ref "V183.[012..016)"
+;* V570 tmp525 [V570 ] ( 0, 0 ) int -> zero-ref "V183.[016..020)"
+;* V571 tmp526 [V571 ] ( 0, 0 ) ref -> zero-ref single-def ptr "V187.[000..008)"
+;* V572 tmp527 [V572 ] ( 0, 0 ) int -> zero-ref "V187.[008..012)"
+; V573 tmp528 [V573,T280] ( 2, 1 ) int -> rdi "V187.[012..016)"
+; V574 tmp529 [V574,T76] ( 3, 12 ) byref -> r12 "BlockOp address local"
+; V575 tmp530 [V575,T231] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
+;* V576 tmp531 [V576 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
+; V577 tmp532 [V577,T20] ( 2, 32 ) ref -> [rbp-0x1D8] spill-single-def "argument with side effect"
+; V578 tmp533 [V578,T21] ( 2, 32 ) ref -> rdx "argument with side effect"
+; V579 tmp534 [V579,T22] ( 2, 32 ) ref -> r8 "argument with side effect"
+; V580 tmp535 [V580,T23] ( 2, 32 ) ref -> [rbp-0x1E0] spill-single-def ptr "argument with side effect"
+; V581 tmp536 [V581,T24] ( 2, 32 ) ref -> [rbp-0x1E8] spill-single-def ptr "argument with side effect"
+; V582 tmp537 [V582,T121] ( 2, 8 ) ref -> rdi "argument with side effect"
+; V583 tmp538 [V583,T122] ( 2, 8 ) ref -> rcx "argument with side effect"
+; V584 tmp539 [V584,T123] ( 2, 8 ) ref -> r13 "argument with side effect"
+; V585 tmp540 [V585,T204] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
+; V586 tmp541 [V586,T124] ( 2, 8 ) ref -> rdi "argument with side effect"
+; V587 tmp542 [V587,T232] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
+; V588 tmp543 [V588,T125] ( 2, 8 ) ref -> rdi "argument with side effect"
+;* V589 tmp544 [V589 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
+; V590 tmp545 [V590,T205] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
+; V591 tmp546 [V591,T233] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
+; V592 tmp547 [V592,T77] ( 3, 12 ) ref -> rdi "argument with side effect"
+; V593 tmp548 [V593,T126] ( 2, 8 ) ref -> rdx "argument with side effect"
+; V594 GsCookie [V594 ] ( 1, 1 ) long -> [rbp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie"
+; V595 tmp550 [V595,T00] ( 84,199 ) ref -> rbx single-def "shadowVar"
+;* V596 cse0 [V596,T293] ( 0, 0 ) long -> zero-ref "CSE #05: conservative"
+; V597 cse1 [V597,T33] ( 3, 24 ) long -> [rbp-0x170] spill-single-def "CSE #53: conservative"
+; V598 cse2 [V598,T261] ( 3, 1.50) int -> rax "CSE #01: conservative"
+; V599 cse3 [V599,T262] ( 3, 1.50) int -> rax "CSE #02: conservative"
+; V600 cse4 [V600,T263] ( 3, 1.50) int -> rax "CSE #24: conservative"
+; V601 cse5 [V601,T264] ( 3, 1.50) int -> rax "CSE #25: conservative"
+; V602 cse6 [V602,T265] ( 3, 1.50) int -> rax "CSE #26: conservative"
+; V603 cse7 [V603,T266] ( 3, 1.50) int -> rax "CSE #27: conservative"
+; V604 cse8 [V604,T267] ( 3, 1.50) int -> rax "CSE #39: conservative"
+; V605 cse9 [V605,T268] ( 3, 1.50) int -> rax "CSE #40: conservative"
+; V606 cse10 [V606,T269] ( 3, 1.50) int -> rax "CSE #41: conservative"
+; V607 cse11 [V607,T270] ( 3, 1.50) int -> rax "CSE #42: conservative"
+; V608 cse12 [V608,T172] ( 3, 6 ) int -> rdi "CSE #11: conservative"
+; V609 cse13 [V609,T173] ( 3, 6 ) int -> rdi "CSE #14: conservative"
+; V610 cse14 [V610,T174] ( 3, 6 ) int -> rdi "CSE #17: conservative"
+; V611 cse15 [V611,T175] ( 3, 6 ) int -> rdi "CSE #31: conservative"
+; V612 rat0 [V612,T06] ( 5, 68 ) long -> [rbp-0x178] "Widened IV V28"
+; V613 rat1 [V613,T43] ( 5, 17 ) long -> r13 "Widened IV V42"
;
; Lcl frame size = 456
G_M21650_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 456
lea rbp, [rsp+0x1F0]
vxorps xmm8, xmm8, xmm8
- mov rax, -192
+ vmovdqa xmmword ptr [rbp-0x160], xmm8
+ vmovdqa xmmword ptr [rbp-0x150], xmm8
+ mov rax, -240
vmovdqa xmmword ptr [rbp+rax-0x50], xmm8
vmovdqa xmmword ptr [rbp+rax-0x40], xmm8
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
add rax, 48
jne SHORT -5 instr
mov qword ptr [rbp-0x30], 0xD1FFAB1E
- ;; size=72 bbWeight=1 PerfScore 15.58
+ ;; size=88 bbWeight=1 PerfScore 19.58
G_M21650_IG02:
mov rbx, rdi
lea r15, [rbp-0x50]
cmp gword ptr [rbx+0x18], 0
- je G_M21650_IG51
+ je G_M21650_IG56
;; size=18 bbWeight=1 PerfScore 4.75
G_M21650_IG03:
mov r14, gword ptr [rbx+0x38]
test r14, r14
je G_M21650_IG07
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x0B]
cmp dword ptr [rdi+0x08], eax
jb SHORT G_M21650_IG04
movsxd rdx, edx
lea rdi, bword ptr [rdi+2*rdx+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmm1, xmmword ptr [rsi+0x06]
vmovdqu xmmword ptr [rdi], xmm0
vmovdqu xmmword ptr [rdi+0x06], xmm1
mov dword ptr [r14+0x18], eax
jmp SHORT G_M21650_IG05
;; size=71 bbWeight=0.50 PerfScore 14.12
G_M21650_IG04:
mov rdi, r14
mov edx, 11
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
G_M21650_IG05:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x01]
cmp dword ptr [rdi+0x08], eax
jb SHORT G_M21650_IG06
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
mov dword ptr [r14+0x18], eax
jmp SHORT G_M21650_IG07
;; size=42 bbWeight=0.50 PerfScore 6.50
G_M21650_IG06:
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
G_M21650_IG07:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov rdi, 0xD1FFAB1E
mov esi, 704
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]:s_emptyArray
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r14+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbx+0x18]
mov esi, dword ptr [rdi+0x44]
vxorps xmm0, xmm0, xmm0
- vmovdqu xmmword ptr [rbp-0xF8], xmm0
+ vmovdqu xmmword ptr [rbp-0x128], xmm0
;; size=79 bbWeight=0.50 PerfScore 6.04
G_M21650_IG08:
- vmovdqu ymm0, ymmword ptr [rbp-0x110]
+ vmovdqu ymm0, ymmword ptr [rbp-0x140]
vmovdqu ymmword ptr [rbp-0x78], ymm0
- mov rax, qword ptr [rbp-0xF0]
+ mov rax, qword ptr [rbp-0x120]
mov qword ptr [rbp-0x58], rax
;; size=24 bbWeight=0.50 PerfScore 3.50
G_M21650_IG09:
mov gword ptr [rbp-0x78], rdi
mov dword ptr [rbp-0x70], esi
xor edi, edi
mov dword ptr [rbp-0x6C], edi
mov dword ptr [rbp-0x68], 2
lea rdi, [rbp-0x78]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+Enumerator[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+Enumerator[int,System.__Canon]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.Dictionary`2+Enumerator[int,System.__Canon]:MoveNext():ubyte:this
test eax, eax
je SHORT G_M21650_IG14
;; size=49 bbWeight=0.50 PerfScore 4.75
G_M21650_IG10:
mov rsi, gword ptr [rbp-0x60]
mov r13d, dword ptr [rbp-0x58]
inc dword ptr [r14+0x14]
mov rdi, gword ptr [r14+0x08]
mov eax, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], eax
jbe SHORT G_M21650_IG12
;; size=25 bbWeight=4 PerfScore 52.00
G_M21650_IG11:
lea ecx, [rax+0x01]
mov dword ptr [r14+0x10], ecx
mov eax, eax
shl rax, 4
lea r12, bword ptr [rdi+rax+0x10]
mov rdi, r12
call CORINFO_HELP_ASSIGN_REF
mov dword ptr [r12+0x08], r13d
jmp SHORT G_M21650_IG13
;; size=33 bbWeight=2 PerfScore 15.00
G_M21650_IG12:
mov edx, r13d
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:AddWithResize(System.Collections.Generic.KeyValuePair`2[int,System.__Canon]):this
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:AddWithResize(System.Collections.Generic.KeyValuePair`2[int,System.__Canon]):this
;; size=18 bbWeight=2 PerfScore 7.50
G_M21650_IG13:
lea rdi, [rbp-0x78]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+Enumerator[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+Enumerator[int,System.__Canon]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.Dictionary`2+Enumerator[int,System.__Canon]:MoveNext():ubyte:this
test eax, eax
jne SHORT G_M21650_IG10
;; size=30 bbWeight=4 PerfScore 21.00
G_M21650_IG14:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M21650_IG191
+ je G_M21650_IG199
;; size=19 bbWeight=0.50 PerfScore 2.12
G_M21650_IG15:
mov rdi, 0xD1FFAB1E ; data for System.Diagnostics.Tracing.ManifestBuilder+<>c:<>9__19_1
mov rsi, gword ptr [rdi]
test rsi, rsi
jne SHORT G_M21650_IG16
mov rdi, 0xD1FFAB1E ; System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rdi, 0xD1FFAB1E ; data for System.Diagnostics.Tracing.ManifestBuilder+<>c:<>9
mov rsi, gword ptr [rdi]
test rsi, rsi
- je G_M21650_IG192
+ je G_M21650_IG200
lea rdi, bword ptr [r13+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder+<>c:<CreateManifestString>b__19_1(System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo],System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]):int:this
mov qword ptr [r13+0x18], rdi
mov rdi, 0xD1FFAB1E ; data for System.Diagnostics.Tracing.ManifestBuilder+<>c:<>9__19_1
mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
mov rsi, r13
;; size=102 bbWeight=0.50 PerfScore 6.50
G_M21650_IG16:
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:Sort(System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]):this
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:Sort(System.Comparison`1[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]):this
- mov r13d, dword ptr [r14+0x14]
- xor r12d, r12d
- jmp G_M21650_IG45
- ;; size=27 bbWeight=0.50 PerfScore 3.88
+ mov edi, dword ptr [r14+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0x150], xmm0
+ ;; size=31 bbWeight=0.50 PerfScore 3.42
G_M21650_IG17:
- mov dword ptr [rbp-0x7C], ecx
- mov gword ptr [rbp-0x138], rax
- xor rdx, rdx
- mov gword ptr [rbp-0x140], rdx
- ;; size=19 bbWeight=2 PerfScore 6.50
+ vmovdqu ymm0, ymmword ptr [rbp-0x160]
+ vmovdqu ymmword ptr [rbp-0x98], ymm0
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M21650_IG18:
- mov r8, gword ptr [rax+0x10]
- test r8, r8
- mov dword ptr [rbp-0x80], edx
- je G_M21650_IG20
- mov rdx, r8
- mov gword ptr [rbp-0x150], rdx
- mov edi, dword ptr [rdx+0x08]
- mov dword ptr [rbp-0x114], edi
+ mov gword ptr [rbp-0x98], r14
+ xor esi, esi
+ mov dword ptr [rbp-0x90], esi
+ mov dword ptr [rbp-0x8C], edi
+ lea rdi, [rbp-0x98]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ je G_M21650_IG52
+ ;; size=58 bbWeight=0.50 PerfScore 4.25
+G_M21650_IG19:
+ mov r14, gword ptr [rbp-0x88]
+ mov r13d, dword ptr [rbp-0x80]
+ xor r12, r12
+ xor eax, eax
+ cmp gword ptr [r14+0x10], 0
+ mov dword ptr [rbp-0x9C], eax
+ je G_M21650_IG22
+ ;; size=33 bbWeight=4 PerfScore 30.00
+G_M21650_IG20:
+ mov rax, gword ptr [r14+0x10]
+ mov gword ptr [rbp-0x188], rax
+ mov edi, dword ptr [rax+0x08]
+ mov dword ptr [rbp-0x164], edi
mov rdi, 0xD1FFAB1E ; 'System.Diagnostics.Tracing.EventChannelType'
- mov esi, dword ptr [rbp-0x114]
- mov r8, 0xD1FFAB1E ; code for System.Enum:IsDefinedPrimitive[uint](System.RuntimeType,uint):ubyte
- call [r8]System.Enum:IsDefinedPrimitive[uint](System.RuntimeType,uint):ubyte
+ mov esi, dword ptr [rbp-0x164]
+ mov rcx, 0xD1FFAB1E ; code for System.Enum:IsDefinedPrimitive[uint](System.RuntimeType,uint):ubyte
+ call [rcx]System.Enum:IsDefinedPrimitive[uint](System.RuntimeType,uint):ubyte
test eax, eax
- je SHORT G_M21650_IG19
- mov rax, gword ptr [rbp-0x150]
- mov ecx, dword ptr [rax+0x08]
- mov dword ptr [rbp-0x84], ecx
+ je SHORT G_M21650_IG21
+ mov r12, gword ptr [rbp-0x188]
+ mov eax, dword ptr [r12+0x08]
+ mov dword ptr [rbp-0xA0], eax
mov rdi, 0xD1FFAB1E ; System.Diagnostics.Tracing.EventChannelType
call CORINFO_HELP_NEWSFAST
- mov edi, dword ptr [rbp-0x84]
+ mov edi, dword ptr [rbp-0xA0]
mov dword ptr [rax+0x08], edi
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Enum:ToString():System.String:this
call [rax]System.Enum:ToString():System.String:this
- mov gword ptr [rbp-0x140], rax
- ;; size=130 bbWeight=2 PerfScore 52.00
-G_M21650_IG19:
- mov rdi, gword ptr [rbp-0x150]
- movzx rdx, byte ptr [rdi+0x0C]
- mov dword ptr [rbp-0x80], edx
- ;; size=14 bbWeight=2 PerfScore 8.00
-G_M21650_IG20:
+ mov rsi, rax
+ mov r12, rsi
+ ;; size=115 bbWeight=2 PerfScore 46.00
+G_M21650_IG21:
+ mov rdi, gword ptr [rbp-0x188]
+ movzx rax, byte ptr [rdi+0x0C]
+ mov dword ptr [rbp-0x9C], eax
+ ;; size=17 bbWeight=2 PerfScore 8.00
+G_M21650_IG22:
mov rdi, gword ptr [rbx+0x50]
- mov rax, gword ptr [rbp-0x138]
- mov rdx, gword ptr [rax+0x08]
+ mov rdx, gword ptr [r14+0x08]
mov rsi, 0xD1FFAB1E ; '/'
- mov r8, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
- call [r8]System.String:Concat(System.String,System.String,System.String):System.String
- mov gword ptr [rbp-0x148], rax
+ mov rcx, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
+ call [rcx]System.String:Concat(System.String,System.String,System.String):System.String
+ mov gword ptr [rbp-0x180], rax
mov rax, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x198], rax
+ mov gword ptr [rbp-0x1C0], rax
test rax, rax
- je G_M21650_IG28
+ je G_M21650_IG31
+ ;; size=57 bbWeight=4 PerfScore 51.00
+G_M21650_IG23:
mov rdx, 0xD1FFAB1E
mov rdi, gword ptr [rax+0x08]
mov ecx, dword ptr [rax+0x18]
lea r8d, [rcx+0x11]
cmp dword ptr [rdi+0x08], r8d
- jb SHORT G_M21650_IG21
+ jb SHORT G_M21650_IG24
movsxd r8, ecx
lea rdi, bword ptr [rdi+2*r8+0x10]
vmovdqu ymm0, ymmword ptr [rdx]
vmovdqu xmm1, xmmword ptr [rdx+0x12]
vmovdqu ymmword ptr [rdi], ymm0
vmovdqu xmmword ptr [rdi+0x12], xmm1
add ecx, 17
mov dword ptr [rax+0x18], ecx
- jmp SHORT G_M21650_IG22
- ;; size=126 bbWeight=2 PerfScore 80.00
-G_M21650_IG21:
+ jmp SHORT G_M21650_IG25
+ ;; size=61 bbWeight=2 PerfScore 52.50
+G_M21650_IG24:
mov rdi, rax
mov rsi, rdx
mov edx, 17
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x198]
+ mov rax, gword ptr [rbp-0x1C0]
;; size=30 bbWeight=2 PerfScore 10.00
-G_M21650_IG22:
- mov rcx, gword ptr [rbp-0x138]
- mov rdi, gword ptr [rcx+0x08]
+G_M21650_IG25:
+ mov rdi, gword ptr [r14+0x08]
test rdi, rdi
- je SHORT G_M21650_IG23
+ je SHORT G_M21650_IG26
mov edx, dword ptr [rdi+0x08]
lea rsi, bword ptr [rdi+0x0C]
mov rdi, rax
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [r8]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x198]
- ;; size=46 bbWeight=2 PerfScore 22.50
-G_M21650_IG23:
+ mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
+ call [rcx]System.Text.StringBuilder:Append(byref,int):this
+ mov rax, gword ptr [rbp-0x1C0]
+ ;; size=38 bbWeight=2 PerfScore 20.50
+G_M21650_IG26:
mov rdx, 0xD1FFAB1E
mov rdi, gword ptr [rax+0x08]
- mov r8d, dword ptr [rax+0x18]
- lea r9d, [r8+0x08]
- cmp dword ptr [rdi+0x08], r9d
- jb SHORT G_M21650_IG24
- movsxd r9, r8d
- lea rdi, bword ptr [rdi+2*r9+0x10]
+ mov ecx, dword ptr [rax+0x18]
+ lea r8d, [rcx+0x08]
+ cmp dword ptr [rdi+0x08], r8d
+ jb SHORT G_M21650_IG27
+ movsxd r8, ecx
+ lea rdi, bword ptr [rdi+2*r8+0x10]
vmovdqu xmm0, xmmword ptr [rdx]
vmovdqu xmmword ptr [rdi], xmm0
- add r8d, 8
- mov dword ptr [rax+0x18], r8d
- jmp SHORT G_M21650_IG25
- ;; size=54 bbWeight=2 PerfScore 38.50
-G_M21650_IG24:
+ add ecx, 8
+ mov dword ptr [rax+0x18], ecx
+ jmp SHORT G_M21650_IG28
+ ;; size=51 bbWeight=2 PerfScore 38.50
+G_M21650_IG27:
mov rdi, rax
mov rsi, rdx
mov edx, 8
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [r8]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x198]
- ;; size=31 bbWeight=2 PerfScore 10.00
-G_M21650_IG25:
- mov rsi, gword ptr [rbp-0x148]
+ mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ mov rax, gword ptr [rbp-0x1C0]
+ ;; size=30 bbWeight=2 PerfScore 10.00
+G_M21650_IG28:
+ mov rsi, gword ptr [rbp-0x180]
test rsi, rsi
- je SHORT G_M21650_IG26
+ je SHORT G_M21650_IG29
mov edx, dword ptr [rsi+0x08]
add rsi, 12
mov rdi, rax
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [r8]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x198]
- ;; size=42 bbWeight=2 PerfScore 18.00
-G_M21650_IG26:
+ mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
+ call [rcx]System.Text.StringBuilder:Append(byref,int):this
+ mov rax, gword ptr [rbp-0x1C0]
+ ;; size=41 bbWeight=2 PerfScore 18.00
+G_M21650_IG29:
mov edi, dword ptr [rax+0x18]
mov esi, edi
- mov rdx, gword ptr [rax+0x08]
- cmp dword ptr [rdx+0x08], esi
- jbe SHORT G_M21650_IG27
- mov word ptr [rdx+2*rsi+0x10], 34
+ mov rcx, gword ptr [rax+0x08]
+ cmp dword ptr [rcx+0x08], esi
+ jbe SHORT G_M21650_IG30
+ mov word ptr [rcx+2*rsi+0x10], 34
inc edi
mov dword ptr [rax+0x18], edi
- jmp SHORT G_M21650_IG28
+ jmp SHORT G_M21650_IG31
;; size=28 bbWeight=2 PerfScore 25.00
-G_M21650_IG27:
+G_M21650_IG30:
mov rdi, rax
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG28:
- mov rcx, gword ptr [rbp-0x138]
- mov rcx, gword ptr [rcx+0x08]
+G_M21650_IG31:
+ mov rcx, gword ptr [r14+0x08]
mov rsi, gword ptr [rbx+0x38]
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; 'channel'
xor r8, r8
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
- mov rax, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x1A0], rax
- test rax, rax
- je G_M21650_IG32
+ mov r14, gword ptr [rbx+0x38]
+ test r14, r14
+ je G_M21650_IG36
+ ;; size=49 bbWeight=4 PerfScore 45.00
+G_M21650_IG32:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea ecx, [rdx+0x08]
- cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG29
- movsxd rcx, edx
- lea rdi, bword ptr [rdi+2*rcx+0x10]
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x08]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG33
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmmword ptr [rdi], xmm0
add edx, 8
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG30
- ;; size=112 bbWeight=2 PerfScore 65.00
-G_M21650_IG29:
- mov rdi, rax
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG34
+ ;; size=51 bbWeight=2 PerfScore 38.50
+G_M21650_IG33:
+ mov rdi, r14
mov edx, 8
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x1A0]
- ;; size=27 bbWeight=2 PerfScore 9.50
-G_M21650_IG30:
- mov rdi, rax
- mov esi, dword ptr [rbp-0x7C]
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG34:
+ mov rdi, r14
+ mov esi, r13d
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
mov edi, dword ptr [rax+0x18]
mov esi, edi
mov rcx, gword ptr [rax+0x08]
cmp dword ptr [rcx+0x08], esi
- jbe SHORT G_M21650_IG31
+ jbe SHORT G_M21650_IG35
mov word ptr [rcx+2*rsi+0x10], 34
inc edi
mov dword ptr [rax+0x18], edi
- jmp SHORT G_M21650_IG32
- ;; size=46 bbWeight=2 PerfScore 34.00
-G_M21650_IG31:
+ jmp SHORT G_M21650_IG36
+ ;; size=46 bbWeight=2 PerfScore 32.50
+G_M21650_IG35:
mov rdi, rax
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG32:
- cmp gword ptr [rbp-0x140], 0
- je G_M21650_IG36
- mov rax, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x1B0], rax
- test rax, rax
- je G_M21650_IG36
- mov rdx, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov ecx, dword ptr [rax+0x18]
- lea r8d, [rcx+0x07]
- cmp dword ptr [rdi+0x08], r8d
- jb SHORT G_M21650_IG33
- movsxd r8, ecx
- lea rdi, bword ptr [rdi+2*r8+0x10]
- mov r8, qword ptr [rdx]
- mov r9, qword ptr [rdx+0x06]
- mov qword ptr [rdi], r8
- mov qword ptr [rdi+0x06], r9
- add ecx, 7
- mov dword ptr [rax+0x18], ecx
- jmp SHORT G_M21650_IG34
- ;; size=91 bbWeight=2 PerfScore 53.00
-G_M21650_IG33:
- mov rdi, rax
- mov rsi, rdx
+G_M21650_IG36:
+ test r12, r12
+ je G_M21650_IG41
+ ;; size=9 bbWeight=4 PerfScore 5.00
+G_M21650_IG37:
+ mov r14, gword ptr [rbx+0x38]
+ test r14, r14
+ je G_M21650_IG41
+ mov rsi, 0xD1FFAB1E
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x07]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG38
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
+ mov rax, qword ptr [rsi]
+ mov rcx, qword ptr [rsi+0x06]
+ mov qword ptr [rdi], rax
+ mov qword ptr [rdi+0x06], rcx
+ add edx, 7
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG39
+ ;; size=70 bbWeight=2 PerfScore 45.00
+G_M21650_IG38:
+ mov rdi, r14
mov edx, 7
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x1B0]
- ;; size=30 bbWeight=2 PerfScore 10.00
-G_M21650_IG34:
- mov rsi, gword ptr [rbp-0x140]
- mov edx, dword ptr [rsi+0x08]
- add rsi, 12
- mov rdi, rax
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [rcx]System.Text.StringBuilder:Append(byref,int):this
- mov rsi, gword ptr [rbp-0x1B0]
- mov edi, dword ptr [rsi+0x18]
- mov eax, edi
- mov rcx, gword ptr [rsi+0x08]
- cmp dword ptr [rcx+0x08], eax
- jbe SHORT G_M21650_IG35
- mov word ptr [rcx+2*rax+0x10], 34
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG39:
+ mov edx, dword ptr [r12+0x08]
+ lea rsi, bword ptr [r12+0x0C]
+ mov rdi, r14
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
+ call [rax]System.Text.StringBuilder:Append(byref,int):this
+ mov edi, dword ptr [r14+0x18]
+ mov esi, edi
+ mov rax, gword ptr [r14+0x08]
+ cmp dword ptr [rax+0x08], esi
+ jbe SHORT G_M21650_IG40
+ mov word ptr [rax+2*rsi+0x10], 34
inc edi
- mov dword ptr [rsi+0x18], edi
- jmp SHORT G_M21650_IG36
- ;; size=64 bbWeight=2 PerfScore 40.50
-G_M21650_IG35:
- mov rdi, rsi
+ mov dword ptr [r14+0x18], edi
+ jmp SHORT G_M21650_IG41
+ ;; size=55 bbWeight=2 PerfScore 37.00
+G_M21650_IG40:
+ mov rdi, r14
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG36:
- mov rax, gword ptr [rbx+0x38]
- test rax, rax
- je G_M21650_IG45
+G_M21650_IG41:
+ mov r14, gword ptr [rbx+0x38]
+ test r14, r14
+ je G_M21650_IG51
+ ;; size=13 bbWeight=4 PerfScore 13.00
+G_M21650_IG42:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea r8d, [rdx+0x0A]
- cmp dword ptr [rdi+0x08], r8d
- jb SHORT G_M21650_IG37
- movsxd r8, edx
- lea rdi, bword ptr [rdi+2*r8+0x10]
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x0A]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG43
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmm1, xmmword ptr [rsi+0x04]
vmovdqu xmmword ptr [rdi], xmm0
vmovdqu xmmword ptr [rdi+0x04], xmm1
add edx, 10
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG38
- ;; size=74 bbWeight=2 PerfScore 57.00
-G_M21650_IG37:
- mov gword ptr [rbp-0x1A8], rax
- mov rdi, rax
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG44
+ ;; size=61 bbWeight=2 PerfScore 50.50
+G_M21650_IG43:
+ mov rdi, r14
mov edx, 10
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [r8]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x1A8]
- ;; size=35 bbWeight=2 PerfScore 11.50
-G_M21650_IG38:
- cmp dword ptr [rbp-0x80], 0
- jne SHORT G_M21650_IG39
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG44:
+ cmp dword ptr [rbp-0x9C], 0
+ jne SHORT G_M21650_IG45
mov rsi, 0xD1FFAB1E ; 'false'
- jmp SHORT G_M21650_IG40
- ;; size=18 bbWeight=2 PerfScore 10.50
-G_M21650_IG39:
+ jmp SHORT G_M21650_IG46
+ ;; size=21 bbWeight=2 PerfScore 10.50
+G_M21650_IG45:
mov rsi, 0xD1FFAB1E ; 'true'
;; size=10 bbWeight=2 PerfScore 0.50
-G_M21650_IG40:
+G_M21650_IG46:
test rsi, rsi
- je SHORT G_M21650_IG41
+ je SHORT G_M21650_IG47
mov edx, dword ptr [rsi+0x08]
add rsi, 12
- mov gword ptr [rbp-0x1A8], rax
- mov rdi, rax
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [rcx]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x1A8]
- ;; size=41 bbWeight=2 PerfScore 18.00
-G_M21650_IG41:
+ mov rdi, r14
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
+ call [rax]System.Text.StringBuilder:Append(byref,int):this
+ ;; size=27 bbWeight=2 PerfScore 14.00
+G_M21650_IG47:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea ecx, [rdx+0x03]
- cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG42
- movsxd rcx, edx
- lea rdi, bword ptr [rdi+2*rcx+0x10]
- mov ecx, dword ptr [rsi]
- mov r8d, dword ptr [rsi+0x02]
- mov dword ptr [rdi], ecx
- mov dword ptr [rdi+0x02], r8d
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x03]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG48
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
+ mov eax, dword ptr [rsi]
+ mov ecx, dword ptr [rsi+0x02]
+ mov dword ptr [rdi], eax
+ mov dword ptr [rdi+0x02], ecx
add edx, 3
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG43
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG49
;; size=53 bbWeight=2 PerfScore 38.50
-G_M21650_IG42:
- mov gword ptr [rbp-0x1A8], rax
- mov rdi, rax
+G_M21650_IG48:
+ mov rdi, r14
mov edx, 3
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x1A8]
- ;; size=34 bbWeight=2 PerfScore 11.50
-G_M21650_IG43:
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG49:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea ecx, [rdx+0x01]
- cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG44
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x01]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG50
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
inc edx
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG45
- ;; size=42 bbWeight=2 PerfScore 26.50
-G_M21650_IG44:
- mov rdi, rax
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG51
+ ;; size=44 bbWeight=2 PerfScore 26.50
+G_M21650_IG50:
+ mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG45:
- mov edi, dword ptr [r14+0x14]
- cmp r13d, edi
- jne G_M21650_IG194
- mov edi, dword ptr [r14+0x10]
- cmp r12d, edi
- jae SHORT G_M21650_IG46
- mov rdi, gword ptr [r14+0x08]
- cmp r12d, dword ptr [rdi+0x08]
- jae G_M21650_IG190
- mov esi, r12d
- shl rsi, 4
- lea rdi, bword ptr [rdi+rsi+0x10]
- mov rax, gword ptr [rdi]
- mov ecx, dword ptr [rdi+0x08]
- inc r12d
- jmp G_M21650_IG17
- ;; size=62 bbWeight=4 PerfScore 82.00
-G_M21650_IG46:
+G_M21650_IG51:
+ lea rdi, [rbp-0x98]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.Diagnostics.Tracing.ManifestBuilder+ChannelInfo]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[int,System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M21650_IG19
+ ;; size=37 bbWeight=4 PerfScore 21.00
+G_M21650_IG52:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je G_M21650_IG51
- ;; size=13 bbWeight=4 PerfScore 13.00
-G_M21650_IG47:
+ je G_M21650_IG56
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x0C]
cmp dword ptr [rdi+0x08], eax
- jb SHORT G_M21650_IG48
+ jb SHORT G_M21650_IG53
movsxd rdx, edx
lea rdi, bword ptr [rdi+2*rdx+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmm1, xmmword ptr [rsi+0x08]
vmovdqu xmmword ptr [rdi], xmm0
vmovdqu xmmword ptr [rdi+0x08], xmm1
mov dword ptr [r14+0x18], eax
- jmp SHORT G_M21650_IG49
- ;; size=58 bbWeight=0.50 PerfScore 12.50
-G_M21650_IG48:
+ jmp SHORT G_M21650_IG54
+ ;; size=71 bbWeight=0.50 PerfScore 14.12
+G_M21650_IG53:
mov rdi, r14
mov edx, 12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M21650_IG49:
+G_M21650_IG54:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x01]
cmp dword ptr [rdi+0x08], eax
- jb SHORT G_M21650_IG50
+ jb SHORT G_M21650_IG55
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
mov dword ptr [r14+0x18], eax
- jmp SHORT G_M21650_IG51
+ jmp SHORT G_M21650_IG56
;; size=42 bbWeight=0.50 PerfScore 6.50
-G_M21650_IG50:
+G_M21650_IG55:
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M21650_IG51:
+G_M21650_IG56:
cmp gword ptr [rbx+0x10], 0
- je G_M21650_IG75
+ je G_M21650_IG82
;; size=11 bbWeight=1 PerfScore 4.00
-G_M21650_IG52:
+G_M21650_IG57:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je G_M21650_IG56
+ je G_M21650_IG61
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x08]
cmp dword ptr [rdi+0x08], eax
- jb SHORT G_M21650_IG53
+ jb SHORT G_M21650_IG58
movsxd rdx, edx
lea rdi, bword ptr [rdi+2*rdx+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmmword ptr [rdi], xmm0
mov dword ptr [r14+0x18], eax
- jmp SHORT G_M21650_IG54
+ jmp SHORT G_M21650_IG59
;; size=61 bbWeight=0.50 PerfScore 11.12
-G_M21650_IG53:
+G_M21650_IG58:
mov rdi, r14
mov edx, 8
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M21650_IG54:
+G_M21650_IG59:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x01]
cmp dword ptr [rdi+0x08], eax
- jb SHORT G_M21650_IG55
+ jb SHORT G_M21650_IG60
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
mov dword ptr [r14+0x18], eax
- jmp SHORT G_M21650_IG56
+ jmp SHORT G_M21650_IG61
;; size=42 bbWeight=0.50 PerfScore 6.50
-G_M21650_IG55:
+G_M21650_IG60:
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M21650_IG56:
+G_M21650_IG61:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[int]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov rdi, gword ptr [rbx+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[int,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[int,System.__Canon]:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[int]:.ctor(System.Collections.Generic.IEnumerable`1[int]):this
call [rax]System.Collections.Generic.List`1[int]:.ctor(System.Collections.Generic.IEnumerable`1[int]):this
mov edx, dword ptr [r14+0x10]
mov rdi, r14
xor esi, esi
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[int]:Sort(int,int,System.Collections.Generic.IComparer`1[int]):this
call [rax]System.Collections.Generic.List`1[int]:Sort(int,int,System.Collections.Generic.IComparer`1[int]):this
- mov r13d, dword ptr [r14+0x14]
- xor r12d, r12d
- jmp G_M21650_IG71
- ;; size=89 bbWeight=0.50 PerfScore 11.88
-G_M21650_IG57:
- mov eax, dword ptr [rbp-0x11C]
+ mov edi, dword ptr [r14+0x14]
+ mov gword ptr [rbp-0xB8], r14
+ xor eax, eax
+ mov dword ptr [rbp-0xB0], eax
+ mov dword ptr [rbp-0xAC], edi
+ ;; size=102 bbWeight=0.50 PerfScore 12.38
+G_M21650_IG62:
+ mov dword ptr [rbp-0xA8], eax
+ lea rdi, [rbp-0xB8]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
+ test eax, eax
+ je G_M21650_IG80
+ ;; size=33 bbWeight=0.50 PerfScore 3.00
+G_M21650_IG63:
+ mov r14d, dword ptr [rbp-0xA8]
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je SHORT G_M21650_IG59
+ je SHORT G_M21650_IG66
+ ;; size=16 bbWeight=4 PerfScore 17.00
+G_M21650_IG64:
mov rsi, 0xD1FFAB1E
mov rdx, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rdi+0x18]
- lea r8d, [rcx+0x07]
- cmp dword ptr [rdx+0x08], r8d
- jb SHORT G_M21650_IG58
- movsxd r8, ecx
- lea rdx, bword ptr [rdx+2*r8+0x10]
- mov r8, qword ptr [rsi]
- mov r9, qword ptr [rsi+0x06]
- mov qword ptr [rdx], r8
- mov qword ptr [rdx+0x06], r9
- add ecx, 7
- mov dword ptr [rdi+0x18], ecx
- jmp SHORT G_M21650_IG59
- ;; size=72 bbWeight=2 PerfScore 47.00
-G_M21650_IG58:
- mov dword ptr [rbp-0x11C], eax
+ mov eax, dword ptr [rdi+0x18]
+ lea ecx, [rax+0x07]
+ cmp dword ptr [rdx+0x08], ecx
+ jb SHORT G_M21650_IG65
+ movsxd rcx, eax
+ lea rdx, bword ptr [rdx+2*rcx+0x10]
+ mov rcx, qword ptr [rsi]
+ mov r8, qword ptr [rsi+0x06]
+ mov qword ptr [rdx], rcx
+ mov qword ptr [rdx+0x06], r8
+ add eax, 7
+ mov dword ptr [rdi+0x18], eax
+ jmp SHORT G_M21650_IG66
+ ;; size=55 bbWeight=2 PerfScore 38.50
+G_M21650_IG65:
mov edx, 7
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov eax, dword ptr [rbp-0x11C]
- ;; size=29 bbWeight=2 PerfScore 11.00
-G_M21650_IG59:
- mov rcx, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x188], rcx
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=17 bbWeight=2 PerfScore 7.00
+G_M21650_IG66:
+ mov r13, gword ptr [rbx+0x38]
mov rdi, gword ptr [rbx+0x10]
cmp byte ptr [rdi], dil
- mov dword ptr [rbp-0x11C], eax
- mov esi, eax
- mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.__Canon]:FindValue(int):byref:this
- call [rdx]System.Collections.Generic.Dictionary`2[int,System.__Canon]:FindValue(int):byref:this
+ mov esi, r14d
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.__Canon]:FindValue(int):byref:this
+ call [rax]System.Collections.Generic.Dictionary`2[int,System.__Canon]:FindValue(int):byref:this
test rax, rax
- je G_M21650_IG193
- mov rax, gword ptr [rax]
- mov gword ptr [rbp-0x1B8], rax
- mov rcx, gword ptr [rbp-0x188]
- test rcx, rcx
- je SHORT G_M21650_IG60
+ je G_M21650_IG201
+ mov r12, gword ptr [rax]
+ test r13, r13
+ je G_M21650_IG72
+ ;; size=47 bbWeight=4 PerfScore 60.00
+G_M21650_IG67:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rcx+0x08]
- mov edx, dword ptr [rcx+0x18]
- lea r8d, [rdx+0x07]
- cmp dword ptr [rdi+0x08], r8d
- jb SHORT G_M21650_IG61
- movsxd r8, edx
- lea rdi, bword ptr [rdi+2*r8+0x10]
- mov r8, qword ptr [rsi]
- mov r9, qword ptr [rsi+0x06]
- mov qword ptr [rdi], r8
- mov qword ptr [rdi+0x06], r9
+ mov rdi, gword ptr [r13+0x08]
+ mov edx, dword ptr [r13+0x18]
+ lea eax, [rdx+0x07]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG68
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
+ mov rax, qword ptr [rsi]
+ mov rcx, qword ptr [rsi+0x06]
+ mov qword ptr [rdi], rax
+ mov qword ptr [rdi+0x06], rcx
add edx, 7
- mov dword ptr [rcx+0x18], edx
- jmp SHORT G_M21650_IG62
- ;; size=126 bbWeight=2 PerfScore 76.50
-G_M21650_IG60:
- mov rax, gword ptr [rbp-0x1B8]
- jmp G_M21650_IG65
- ;; size=12 bbWeight=1 PerfScore 3.00
-G_M21650_IG61:
- mov rdi, rcx
+ mov dword ptr [r13+0x18], edx
+ jmp SHORT G_M21650_IG69
+ ;; size=57 bbWeight=2 PerfScore 38.50
+G_M21650_IG68:
+ mov rdi, r13
mov edx, 7
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [r8]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rcx, gword ptr [rbp-0x188]
- ;; size=28 bbWeight=2 PerfScore 9.50
-G_M21650_IG62:
- mov rax, gword ptr [rbp-0x1B8]
- test rax, rax
- je SHORT G_M21650_IG63
- mov edx, dword ptr [rax+0x08]
- lea rsi, bword ptr [rax+0x0C]
- mov rdi, rcx
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [r8]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x1B8]
- mov rcx, gword ptr [rbp-0x188]
- ;; size=49 bbWeight=2 PerfScore 20.50
-G_M21650_IG63:
- mov edi, dword ptr [rcx+0x18]
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG69:
+ test r12, r12
+ je SHORT G_M21650_IG70
+ mov edx, dword ptr [r12+0x08]
+ lea rsi, bword ptr [r12+0x0C]
+ mov rdi, r13
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
+ call [rax]System.Text.StringBuilder:Append(byref,int):this
+ ;; size=30 bbWeight=2 PerfScore 14.50
+G_M21650_IG70:
+ mov edi, dword ptr [r13+0x18]
mov esi, edi
- mov rdx, gword ptr [rcx+0x08]
- cmp dword ptr [rdx+0x08], esi
- jbe SHORT G_M21650_IG64
- cmp esi, dword ptr [rdx+0x08]
- jae G_M21650_IG190
- mov word ptr [rdx+2*rsi+0x10], 34
+ mov rax, gword ptr [r13+0x08]
+ cmp dword ptr [rax+0x08], esi
+ jbe SHORT G_M21650_IG71
+ cmp esi, dword ptr [rax+0x08]
+ jae G_M21650_IG198
+ mov word ptr [rax+2*rsi+0x10], 34
inc edi
- mov dword ptr [rcx+0x18], edi
- jmp SHORT G_M21650_IG65
- ;; size=37 bbWeight=2 PerfScore 33.00
-G_M21650_IG64:
- mov rdi, rcx
+ mov dword ptr [r13+0x18], edi
+ jmp SHORT G_M21650_IG72
+ ;; size=39 bbWeight=2 PerfScore 33.00
+G_M21650_IG71:
+ mov rdi, r13
mov esi, 34
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(ushort):this
- mov rax, gword ptr [rbp-0x1B8]
- ;; size=27 bbWeight=2 PerfScore 9.50
-G_M21650_IG65:
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG72:
mov rsi, gword ptr [rbx+0x38]
mov rdi, rbx
- mov r8, rax
- mov rcx, rax
+ mov r8, r12
+ mov rcx, r12
mov rdx, 0xD1FFAB1E ; 'task'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
- mov rax, gword ptr [rbx+0x38]
- test rax, rax
- je G_M21650_IG71
+ mov r13, gword ptr [rbx+0x38]
+ test r13, r13
+ je G_M21650_IG79
+ ;; size=48 bbWeight=4 PerfScore 38.00
+G_M21650_IG73:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea r8d, [rdx+0x08]
- cmp dword ptr [rdi+0x08], r8d
- jb SHORT G_M21650_IG66
- mov ecx, dword ptr [rbp-0x11C]
- movsxd r8, edx
- lea rdi, bword ptr [rdi+2*r8+0x10]
+ mov rdi, gword ptr [r13+0x08]
+ mov edx, dword ptr [r13+0x18]
+ lea eax, [rdx+0x08]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG74
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmmword ptr [rdi], xmm0
add edx, 8
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG67
- ;; size=105 bbWeight=2 PerfScore 59.50
-G_M21650_IG66:
- mov gword ptr [rbp-0x190], rax
- mov rdi, rax
+ mov dword ptr [r13+0x18], edx
+ jmp SHORT G_M21650_IG75
+ ;; size=51 bbWeight=2 PerfScore 38.50
+G_M21650_IG74:
+ mov rdi, r13
mov edx, 8
- mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [r8]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x190]
- mov ecx, dword ptr [rbp-0x11C]
- ;; size=41 bbWeight=2 PerfScore 13.50
-G_M21650_IG67:
- cmp byte ptr [rax], al
- mov rdi, rax
- mov esi, ecx
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG75:
+ cmp byte ptr [r13], r13b
+ mov rdi, r13
+ mov esi, r14d
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
- mov gword ptr [rbp-0x1C0], rax
+ mov r14, rax
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea ecx, [rdx+0x03]
- cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG68
- movsxd rcx, edx
- lea rdi, bword ptr [rdi+2*rcx+0x10]
- mov ecx, dword ptr [rsi]
- mov r8d, dword ptr [rsi+0x02]
- mov dword ptr [rdi], ecx
- mov dword ptr [rdi+0x02], r8d
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x03]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG76
+ movsxd rax, edx
+ lea rdi, bword ptr [rdi+2*rax+0x10]
+ mov eax, dword ptr [rsi]
+ mov ecx, dword ptr [rsi+0x02]
+ mov dword ptr [rdi], eax
+ mov dword ptr [rdi+0x02], ecx
add edx, 3
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG69
- ;; size=79 bbWeight=2 PerfScore 54.00
-G_M21650_IG68:
- mov rdi, rax
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG77
+ ;; size=78 bbWeight=2 PerfScore 52.50
+G_M21650_IG76:
+ mov rdi, r14
mov edx, 3
- mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x1C0]
- ;; size=27 bbWeight=2 PerfScore 9.50
-G_M21650_IG69:
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG77:
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rax+0x08]
- mov edx, dword ptr [rax+0x18]
- lea ecx, [rdx+0x01]
- cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG70
+ mov rdi, gword ptr [r14+0x08]
+ mov edx, dword ptr [r14+0x18]
+ lea eax, [rdx+0x01]
+ cmp dword ptr [rdi+0x08], eax
+ jb SHORT G_M21650_IG78
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
inc edx
- mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG71
- ;; size=42 bbWeight=2 PerfScore 26.50
-G_M21650_IG70:
- mov rdi, rax
+ mov dword ptr [r14+0x18], edx
+ jmp SHORT G_M21650_IG79
+ ;; size=44 bbWeight=2 PerfScore 26.50
+G_M21650_IG78:
+ mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG71:
- mov edi, dword ptr [r14+0x14]
- cmp r13d, edi
- jne G_M21650_IG194
- mov edi, dword ptr [r14+0x10]
- cmp r12d, edi
- jae SHORT G_M21650_IG72
- mov rdi, gword ptr [r14+0x08]
- cmp r12d, dword ptr [rdi+0x08]
- jae G_M21650_IG190
- mov esi, r12d
- mov eax, dword ptr [rdi+4*rsi+0x10]
- mov dword ptr [rbp-0x11C], eax
- inc r12d
- jmp G_M21650_IG57
- ;; size=57 bbWeight=4 PerfScore 72.00
-G_M21650_IG72:
+G_M21650_IG79:
+ lea rdi, [rbp-0xB8]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M21650_IG63
+ ;; size=27 bbWeight=4 PerfScore 20.00
+G_M21650_IG80:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG75
- ;; size=9 bbWeight=4 PerfScore 13.00
-G_M21650_IG73:
+ je SHORT G_M21650_IG82
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x09]
cmp dword ptr [rdi+0x08], eax
- jb G_M21650_IG80
+ jb G_M21650_IG87
movsxd rdx, edx
lea rdi, bword ptr [rdi+2*rdx+0x10]
vmovdqu xmm0, xmmword ptr [rsi]
vmovdqu xmm1, xmmword ptr [rsi+0x02]
vmovdqu xmmword ptr [rdi], xmm0
vmovdqu xmmword ptr [rdi+0x02], xmm1
mov dword ptr [r14+0x18], eax
- ;; size=60 bbWeight=0.50 PerfScore 11.50
-G_M21650_IG74:
+ ;; size=69 bbWeight=0.50 PerfScore 13.12
+G_M21650_IG81:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x01]
cmp dword ptr [rdi+0x08], eax
- jb G_M21650_IG81
+ jb G_M21650_IG88
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
mov dword ptr [r14+0x18], eax
;; size=44 bbWeight=0.50 PerfScore 5.50
-G_M21650_IG75:
+G_M21650_IG82:
cmp gword ptr [rbx+0x28], 0
- je G_M21650_IG114
+ je G_M21650_IG122
;; size=11 bbWeight=1 PerfScore 4.00
-G_M21650_IG76:
+G_M21650_IG83:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG78
+ je SHORT G_M21650_IG85
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x07]
cmp dword ptr [rdi+0x08], eax
- jb G_M21650_IG82
+ jb G_M21650_IG89
movsxd rdx, edx
lea rdi, bword ptr [rdi+2*rdx+0x10]
mov rcx, qword ptr [rsi]
mov rdx, qword ptr [rsi+0x06]
mov qword ptr [rdi], rcx
mov qword ptr [rdi+0x06], rdx
mov dword ptr [r14+0x18], eax
;; size=65 bbWeight=0.50 PerfScore 10.12
-G_M21650_IG77:
+G_M21650_IG84:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [r14+0x08]
mov edx, dword ptr [r14+0x18]
lea eax, [rdx+0x01]
cmp dword ptr [rdi+0x08], eax
- jb G_M21650_IG83
+ jb G_M21650_IG90
movsxd rsi, edx
mov word ptr [rdi+2*rsi+0x10], 10
mov dword ptr [r14+0x18], eax
;; size=44 bbWeight=0.50 PerfScore 5.50
-G_M21650_IG78:
+G_M21650_IG85:
mov rdi, gword ptr [rbx+0x28]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Values():System.Collections.Generic.Dictionary`2+ValueCollection[System.__Canon,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Values():System.Collections.Generic.Dictionary`2+ValueCollection[System.__Canon,System.__Canon]:this
mov rdi, gword ptr [rax+0x08]
mov esi, dword ptr [rdi+0x44]
- mov gword ptr [rbp-0xA0], rdi
+ mov gword ptr [rbp-0xD0], rdi
xor rdi, rdi
- mov gword ptr [rbp-0x98], rdi
+ mov gword ptr [rbp-0xC8], rdi
;; size=41 bbWeight=0.50 PerfScore 7.25
-G_M21650_IG79:
- mov dword ptr [rbp-0x90], edi
- mov dword ptr [rbp-0x8C], esi
- jmp SHORT G_M21650_IG84
+G_M21650_IG86:
+ mov dword ptr [rbp-0xC0], edi
+ mov dword ptr [rbp-0xBC], esi
+ jmp SHORT G_M21650_IG91
;; size=14 bbWeight=0.50 PerfScore 2.00
-G_M21650_IG80:
+G_M21650_IG87:
mov rdi, r14
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- jmp G_M21650_IG74
+ jmp G_M21650_IG81
;; size=25 bbWeight=0.50 PerfScore 2.88
-G_M21650_IG81:
+G_M21650_IG88:
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- jmp G_M21650_IG75
+ jmp G_M21650_IG82
;; size=25 bbWeight=0.50 PerfScore 2.88
-G_M21650_IG82:
+G_M21650_IG89:
mov rdi, r14
mov edx, 7
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- jmp G_M21650_IG77
+ jmp G_M21650_IG84
;; size=25 bbWeight=0.50 PerfScore 2.88
-G_M21650_IG83:
+G_M21650_IG90:
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- jmp G_M21650_IG78
+ jmp G_M21650_IG85
;; size=25 bbWeight=0.50 PerfScore 2.88
-G_M21650_IG84:
- lea rdi, [rbp-0xA0]
+G_M21650_IG91:
+ lea rdi, [rbp-0xD0]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
test eax, eax
- je G_M21650_IG113
+ je G_M21650_IG121
;; size=37 bbWeight=0.50 PerfScore 2.62
-G_M21650_IG85:
- mov r14, gword ptr [rbp-0x98]
+G_M21650_IG92:
+ mov r14, gword ptr [rbp-0xC8]
mov edx, dword ptr [rbx+0x88]
mov rdi, r14
mov rsi, 0xD1FFAB1E ; 'System.FlagsAttribute'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.EventSource:IsCustomAttributeDefinedHelper(System.Reflection.MemberInfo,System.Type,int):ubyte
call [rax]System.Diagnostics.Tracing.EventSource:IsCustomAttributeDefinedHelper(System.Reflection.MemberInfo,System.Type,int):ubyte
mov r13d, eax
test r13d, r13d
- jne SHORT G_M21650_IG87
+ jne SHORT G_M21650_IG94
;; size=46 bbWeight=4 PerfScore 33.00
-G_M21650_IG86:
+G_M21650_IG93:
mov r12, 0xD1FFAB1E ; 'valueMap'
- jmp SHORT G_M21650_IG88
+ jmp SHORT G_M21650_IG95
;; size=12 bbWeight=2 PerfScore 4.50
-G_M21650_IG87:
+G_M21650_IG94:
mov r12, 0xD1FFAB1E ; 'bitMap'
;; size=10 bbWeight=2 PerfScore 0.50
-G_M21650_IG88:
+G_M21650_IG95:
mov rax, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x170], rax
+ mov gword ptr [rbp-0x1A8], rax
test rax, rax
- je G_M21650_IG98
+ je G_M21650_IG106
;; size=20 bbWeight=4 PerfScore 17.00
-G_M21650_IG89:
+G_M21650_IG96:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x18]
lea ecx, [rdx+0x03]
cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG90
+ jb SHORT G_M21650_IG97
movsxd rcx, edx
lea rdi, bword ptr [rdi+2*rcx+0x10]
mov ecx, dword ptr [rsi]
mov r8d, dword ptr [rsi+0x02]
mov dword ptr [rdi], ecx
mov dword ptr [rdi+0x02], r8d
add edx, 3
mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG91
+ jmp SHORT G_M21650_IG98
;; size=53 bbWeight=2 PerfScore 38.50
-G_M21650_IG90:
+G_M21650_IG97:
mov rdi, rax
mov edx, 3
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x170]
+ mov rax, gword ptr [rbp-0x1A8]
;; size=27 bbWeight=2 PerfScore 9.50
-G_M21650_IG91:
+G_M21650_IG98:
cmp byte ptr [rax], al
test r12, r12
- je SHORT G_M21650_IG92
+ je SHORT G_M21650_IG99
lea rsi, bword ptr [r12+0x0C]
mov edx, dword ptr [r12+0x08]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rcx]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x170]
+ mov rax, gword ptr [rbp-0x1A8]
;; size=39 bbWeight=2 PerfScore 22.50
-G_M21650_IG92:
+G_M21650_IG99:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x18]
lea ecx, [rdx+0x07]
cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG93
+ jb SHORT G_M21650_IG100
movsxd rcx, edx
lea rdi, bword ptr [rdi+2*rcx+0x10]
mov rcx, qword ptr [rsi]
mov r8, qword ptr [rsi+0x06]
mov qword ptr [rdi], rcx
mov qword ptr [rdi+0x06], r8
add edx, 7
mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG94
+ jmp SHORT G_M21650_IG101
;; size=55 bbWeight=2 PerfScore 38.50
-G_M21650_IG93:
+G_M21650_IG100:
mov rdi, rax
mov edx, 7
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
;; size=20 bbWeight=2 PerfScore 7.50
-G_M21650_IG94:
+G_M21650_IG101:
mov rdi, r14
mov rcx, qword ptr [r14]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x30]System.Reflection.MemberInfo:get_Name():System.String:this
mov rsi, rax
- mov rax, gword ptr [rbp-0x170]
+ mov rax, gword ptr [rbp-0x1A8]
cmp byte ptr [rax], al
test rsi, rsi
- je SHORT G_M21650_IG95
+ je SHORT G_M21650_IG102
mov edx, dword ptr [rsi+0x08]
add rsi, 12
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rcx]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x170]
+ mov rax, gword ptr [rbp-0x1A8]
;; size=59 bbWeight=2 PerfScore 39.00
-G_M21650_IG95:
+G_M21650_IG102:
mov rsi, 0xD1FFAB1E
mov rdi, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x18]
lea ecx, [rdx+0x02]
cmp dword ptr [rdi+0x08], ecx
- jb SHORT G_M21650_IG96
+ jb SHORT G_M21650_IG103
movsxd rsi, edx
lea rdi, bword ptr [rdi+2*rsi+0x10]
mov word ptr [rdi], 34
mov word ptr [rdi+0x02], 62
add edx, 2
mov dword ptr [rax+0x18], edx
- jmp SHORT G_M21650_IG97
+ jmp SHORT G_M21650_IG104
;; size=52 bbWeight=2 PerfScore 30.50
-G_M21650_IG96:
+G_M21650_IG103:
mov rdi, rax
mov edx, 2
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
call [rcx]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
- mov rax, gword ptr [rbp-0x170]
+ mov rax, gword ptr [rbp-0x1A8]
;; size=27 bbWeight=2 PerfScore 9.50
-G_M21650_IG97:
+G_M21650_IG104:
mov rsi, 0xD1FFAB1E
+ mov rdi, gword ptr [rax+0x08]
+ mov edx, dword ptr [rax+0x18]
+ lea ecx, [rdx+0x01]
+ cmp dword ptr [rdi+0x08], ecx
+ jb SHORT G_M21650_IG105
+ movsxd rsi, edx
+ mov word ptr [rdi+2*rsi+0x10], 10
+ inc edx
+ mov dword ptr [rax+0x18], edx
+ jmp SHORT G_M21650_IG106
+ ;; size=42 bbWeight=2 PerfScore 26.50
+G_M21650_IG105:
mov rdi, rax
mov edx, 1
- mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
- call [rax]System.Text.StringBuilder:Append(byref,int):this
- ;; size=30 bbWeight=2 PerfScore 8.00
-G_M21650_IG98:
+ mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
+ ;; size=20 bbWeight=2 PerfScore 7.50
+G_M21650_IG106:
mov rdi, r14
mov esi, 26
mov rax, qword ptr [r14]
mov rax, qword ptr [rax+0x80]
call [rax+0x28]System.Type:GetFields(int):System.Reflection.FieldInfo[]:this
xor ecx, ecx
- mov dword ptr [rbp-0xA4], ecx
- mov gword ptr [rbp-0x158], rax
+ mov dword ptr [rbp-0xD4], ecx
+ mov gword ptr [rbp-0x190], rax
xor edx, edx
cmp dword ptr [rax+0x08], 0
- jle G_M21650_IG108
+ jle G_M21650_IG116
;; size=48 bbWeight=4 PerfScore 56.00
-G_M21650_IG99:
- mov qword ptr [rbp-0x130], rdx
+G_M21650_IG107:
+ mov qword ptr [rbp-0x178], rdx
mov rsi, gword ptr [rax+8*rdx+0x10]
- mov gword ptr [rbp-0x160], rsi
+ mov gword ptr [rbp-0x198], rsi
mov rdi, rsi
mov r8, qword ptr [rsi]
mov r8, qword ptr [r8+0x58]
call [r8+0x20]System.Reflection.FieldInfo:GetRawConstantValue():System.Object:this
test rax, rax
- je G_M21650_IG106
+ je G_M21650_IG114
;; size=42 bbWeight=16 PerfScore 200.00
-G_M21650_IG100:
+G_M21650_IG108:
mov rdi, 0xD1FFAB1E ; System.UInt64
cmp qword ptr [rax], rdi
- jne SHORT G_M21650_IG101
+ jne SHORT G_M21650_IG109
mov rdi, qword ptr [rax+0x08]
- jmp SHORT G_M21650_IG102
+ jmp SHORT G_M21650_IG110
;; size=21 bbWeight=8 PerfScore 66.00
-G_M21650_IG101:
+G_M21650_IG109:
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Convert:ToInt64(System.Object):long
call [rax]System.Convert:ToInt64(System.Object):long
mov rdi, rax
;; size=18 bbWeight=8 PerfScore 30.00
-G_M21650_IG102:
+G_M21650_IG110:
test r13d, r13d
- je SHORT G_M21650_IG103
+ je SHORT G_M21650_IG111
blsr r8, rdi
- jne G_M21650_IG106
+ jne G_M21650_IG114
test rdi, rdi
- je G_M21650_IG106
+ je G_M21650_IG114
;; size=25 bbWeight=8 PerfScore 32.00
-G_M21650_IG103:
+G_M21650_IG111:
mov rsi, 0xD1FFAB1E
- lea r8, [rbp-0xB0]
+ lea r8, [rbp-0xE0]
mov qword ptr [rsp], r8
mov r8, r15
mov r9d, 16
mov edx, 1
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Number:<TryFormatUInt64>g__TryFormatUInt64Slow|39_0[ushort](ulong,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.Span`1[ushort],byref):ubyte
call [rax]System.Number:<TryFormatUInt64>g__TryFormatUInt64Slow|39_0[ushort](ulong,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.Span`1[ushort],byref):ubyte
- mov eax, dword ptr [rbp-0xB0]
- mov dword ptr [rbp-0x118], eax
+ mov eax, dword ptr [rbp-0xE0]
+ mov dword ptr [rbp-0x168], eax
cmp eax, 16
- ja G_M21650_IG195
+ ja G_M21650_IG202
mov rcx, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x178], rcx
+ mov gword ptr [rbp-0x1B0], rcx
test rcx, rcx
- je SHORT G_M21650_IG104
+ je SHORT G_M21650_IG112
mov rsi, 0xD1FFAB1E
mov rdi, rcx
mov edx, 17
mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [r8]System.Text.StringBuilder:Append(byref,int):this
- mov rax, gword ptr [rbp-0x178]
+ mov rax, gword ptr [rbp-0x1B0]
cmp byte ptr [rax], al
mov rdi, rax
mov rsi, r15
- mov edx, dword ptr [rbp-0x118]
+ mov edx, dword ptr [rbp-0x168]
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rcx]System.Text.StringBuilder:Append(byref,int):this
- mov rdi, gword ptr [rbp-0x178]
+ mov rdi, gword ptr [rbp-0x1B0]
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
;; size=176 bbWeight=8 PerfScore 270.00
-G_M21650_IG104:
+G_M21650_IG112:
mov rax, gword ptr [rbx+0x38]
mov gword ptr [rbp-0x1E8], rax
mov rdi, r14
mov rcx, qword ptr [r14]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x30]System.Reflection.MemberInfo:get_Name():System.String:this
mov gword ptr [rbp-0x1D8], rax
- mov rdi, gword ptr [rbp-0x160]
+ mov rdi, gword ptr [rbp-0x198]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x40]
- mov qword ptr [rbp-0x128], rcx
+ mov qword ptr [rbp-0x170], rcx
call [rcx+0x30]System.Reflection.MemberInfo:get_Name():System.String:this
mov rdx, rax
mov rdi, gword ptr [rbp-0x1D8]
mov rsi, 0xD1FFAB1E ; '.'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String,System.String):System.String
mov gword ptr [rbp-0x1E0], rax
- mov rdi, gword ptr [rbp-0x160]
- mov rcx, qword ptr [rbp-0x128]
+ mov rdi, gword ptr [rbp-0x198]
+ mov rcx, qword ptr [rbp-0x170]
call [rcx+0x30]System.Reflection.MemberInfo:get_Name():System.String:this
mov r8, rax
mov rcx, gword ptr [rbp-0x1E0]
mov rsi, gword ptr [rbp-0x1E8]
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; 'map'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
mov rax, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x180], rax
+ mov gword ptr [rbp-0x1B8], rax
test rax, rax
- je SHORT G_M21650_IG105
+ je SHORT G_M21650_IG113
mov rsi, 0xD1FFAB1E
mov rdi, rax
mov edx, 2
mov rcx, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rcx]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
- mov rdi, gword ptr [rbp-0x180]
+ mov rdi, gword ptr [rbp-0x1B8]
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=233 bbWeight=8 PerfScore 400.00
-G_M21650_IG105:
+G_M21650_IG113:
mov esi, 1
- mov dword ptr [rbp-0xA4], esi
+ mov dword ptr [rbp-0xD4], esi
;; size=11 bbWeight=8 PerfScore 10.00
-G_M21650_IG106:
- mov rdi, qword ptr [rbp-0x130]
+G_M21650_IG114:
+ mov rdi, qword ptr [rbp-0x178]
inc edi
- mov rdx, gword ptr [rbp-0x158]
+ mov rdx, gword ptr [rbp-0x190]
cmp dword ptr [rdx+0x08], edi
mov rax, rdx
- jg G_M21650_IG187
+ jg G_M21650_IG195
;; size=28 bbWeight=16 PerfScore 104.00
-G_M21650_IG107:
- cmp dword ptr [rbp-0xA4], 0
- jne G_M21650_IG110
+G_M21650_IG115:
+ cmp dword ptr [rbp-0xD4], 0
+ jne G_M21650_IG118
;; size=13 bbWeight=4 PerfScore 12.00
-G_M21650_IG108:
+G_M21650_IG116:
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je SHORT G_M21650_IG109
+ je SHORT G_M21650_IG117
mov rsi, 0xD1FFAB1E
mov edx, 19
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=36 bbWeight=2 PerfScore 14.00
-G_M21650_IG109:
+G_M21650_IG117:
mov r13, gword ptr [rbx+0x38]
mov rdi, r14
mov rax, qword ptr [r14]
mov rax, qword ptr [rax+0x40]
call [rax+0x30]System.Reflection.MemberInfo:get_Name():System.String:this
mov rdi, rax
mov rsi, 0xD1FFAB1E ; '.None'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String):System.String
mov rcx, rax
mov rsi, r13
mov rdi, rbx
mov rdx, 0xD1FFAB1E ; 'map'
mov r8, 0xD1FFAB1E ; 'None'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG110
+ je SHORT G_M21650_IG118
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 2
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=152 bbWeight=2 PerfScore 57.50
-G_M21650_IG110:
+G_M21650_IG118:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG112
+ je SHORT G_M21650_IG120
;; size=9 bbWeight=4 PerfScore 13.00
-G_M21650_IG111:
+G_M21650_IG119:
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 4
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rdi, r14
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov r14, rax
cmp byte ptr [r14], r14b
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=116 bbWeight=2 PerfScore 44.00
-G_M21650_IG112:
- lea rdi, [rbp-0xA0]
+G_M21650_IG120:
+ lea rdi, [rbp-0xD0]
mov rsi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.String,System.Type]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
test eax, eax
- jne G_M21650_IG85
+ jne G_M21650_IG92
;; size=37 bbWeight=4 PerfScore 21.00
-G_M21650_IG113:
+G_M21650_IG121:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG114
+ je SHORT G_M21650_IG122
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 8
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=69 bbWeight=0.50 PerfScore 5.62
-G_M21650_IG114:
+G_M21650_IG122:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG116
+ je SHORT G_M21650_IG124
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG115:
+G_M21650_IG123:
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 10
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG116:
+G_M21650_IG124:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[int]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov rdi, gword ptr [rbx+0x08]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[int,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[int,System.__Canon]:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[int]:.ctor(System.Collections.Generic.IEnumerable`1[int]):this
call [rax]System.Collections.Generic.List`1[int]:.ctor(System.Collections.Generic.IEnumerable`1[int]):this
mov edx, dword ptr [r14+0x10]
mov rdi, r14
xor esi, esi
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[int]:Sort(int,int,System.Collections.Generic.IComparer`1[int]):this
call [rax]System.Collections.Generic.List`1[int]:Sort(int,int,System.Collections.Generic.IComparer`1[int]):this
mov edi, dword ptr [r14+0x14]
- mov gword ptr [rbp-0xC8], r14
+ mov gword ptr [rbp-0xF8], r14
xor eax, eax
- mov dword ptr [rbp-0xC0], eax
- mov dword ptr [rbp-0xBC], edi
+ mov dword ptr [rbp-0xF0], eax
+ mov dword ptr [rbp-0xEC], edi
;; size=102 bbWeight=1 PerfScore 24.75
-G_M21650_IG117:
- mov dword ptr [rbp-0xB8], eax
- lea rdi, [rbp-0xC8]
+G_M21650_IG125:
+ mov dword ptr [rbp-0xE8], eax
+ lea rdi, [rbp-0xF8]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
test eax, eax
- je G_M21650_IG125
+ je G_M21650_IG133
;; size=33 bbWeight=1 PerfScore 6.00
-G_M21650_IG118:
- mov r14d, dword ptr [rbp-0xB8]
+G_M21650_IG126:
+ mov r14d, dword ptr [rbp-0xE8]
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je SHORT G_M21650_IG120
+ je SHORT G_M21650_IG128
;; size=16 bbWeight=4 PerfScore 17.00
-G_M21650_IG119:
+G_M21650_IG127:
mov rsi, 0xD1FFAB1E
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=27 bbWeight=2 PerfScore 7.50
-G_M21650_IG120:
+G_M21650_IG128:
mov r13, gword ptr [rbx+0x38]
mov rdi, gword ptr [rbx+0x08]
mov esi, r14d
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Item(int):System.__Canon:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[int,System.__Canon]:get_Item(int):System.__Canon:this
mov r12, rax
test r13, r13
- je SHORT G_M21650_IG122
+ je SHORT G_M21650_IG130
;; size=33 bbWeight=4 PerfScore 48.00
-G_M21650_IG121:
+G_M21650_IG129:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 7
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rdi, r13
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov rdi, rax
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
;; size=70 bbWeight=2 PerfScore 29.00
-G_M21650_IG122:
+G_M21650_IG130:
mov rsi, gword ptr [rbx+0x38]
mov rdi, rbx
mov r8, r12
mov rcx, r12
mov rdx, 0xD1FFAB1E ; 'opcode'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
mov r13, gword ptr [rbx+0x38]
test r13, r13
- je SHORT G_M21650_IG124
+ je SHORT G_M21650_IG132
;; size=44 bbWeight=4 PerfScore 38.00
-G_M21650_IG123:
+G_M21650_IG131:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 8
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
cmp byte ptr [r13], r13b
mov rdi, r13
mov esi, r14d
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:AppendSpanFormattable[int](int):System.Text.StringBuilder:this
mov r14, rax
cmp byte ptr [r14], r14b
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 3
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=118 bbWeight=2 PerfScore 44.00
-G_M21650_IG124:
- lea rdi, [rbp-0xC8]
+G_M21650_IG132:
+ lea rdi, [rbp-0xF8]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.List`1+Enumerator[int]:MoveNext():ubyte:this
test eax, eax
- jne G_M21650_IG118
+ jne G_M21650_IG126
;; size=27 bbWeight=4 PerfScore 20.00
-G_M21650_IG125:
+G_M21650_IG133:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG127
+ je SHORT G_M21650_IG135
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG126:
+G_M21650_IG134:
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 11
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG127:
+G_M21650_IG135:
cmp gword ptr [rbx+0x20], 0
- je G_M21650_IG139
+ je G_M21650_IG147
;; size=11 bbWeight=1 PerfScore 4.00
-G_M21650_IG128:
+G_M21650_IG136:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG129
+ je SHORT G_M21650_IG137
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 11
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=69 bbWeight=0.50 PerfScore 5.62
-G_M21650_IG129:
+G_M21650_IG137:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[ulong]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov rdi, gword ptr [rbx+0x20]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[ulong,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[ulong,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[ulong,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[ulong,System.__Canon]:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[ulong]:.ctor(System.Collections.Generic.IEnumerable`1[ulong]):this
call [rax]System.Collections.Generic.List`1[ulong]:.ctor(System.Collections.Generic.IEnumerable`1[ulong]):this
mov edx, dword ptr [r14+0x10]
mov rdi, r14
xor esi, esi
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[ulong]:Sort(int,int,System.Collections.Generic.IComparer`1[ulong]):this
call [rax]System.Collections.Generic.List`1[ulong]:Sort(int,int,System.Collections.Generic.IComparer`1[ulong]):this
mov edi, dword ptr [r14+0x14]
- mov gword ptr [rbp-0xE0], r14
+ mov gword ptr [rbp-0x110], r14
xor eax, eax
- mov qword ptr [rbp-0xD8], rax
+ mov qword ptr [rbp-0x108], rax
;; size=97 bbWeight=0.50 PerfScore 11.88
-G_M21650_IG130:
- mov dword ptr [rbp-0xD0], eax
- mov dword ptr [rbp-0xCC], edi
- lea rdi, [rbp-0xE0]
+G_M21650_IG138:
+ mov dword ptr [rbp-0x100], eax
+ mov dword ptr [rbp-0xFC], edi
+ lea rdi, [rbp-0x110]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[ulong]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.List`1+Enumerator[ulong]:MoveNext():ubyte:this
test eax, eax
- je G_M21650_IG138
+ je G_M21650_IG146
;; size=39 bbWeight=0.50 PerfScore 3.50
-G_M21650_IG131:
- mov r14, qword ptr [rbp-0xD8]
+G_M21650_IG139:
+ mov r14, qword ptr [rbp-0x108]
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je SHORT G_M21650_IG133
+ je SHORT G_M21650_IG141
;; size=16 bbWeight=4 PerfScore 17.00
-G_M21650_IG132:
+G_M21650_IG140:
mov rsi, 0xD1FFAB1E
mov edx, 10
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=27 bbWeight=2 PerfScore 7.50
-G_M21650_IG133:
+G_M21650_IG141:
mov r13, gword ptr [rbx+0x38]
mov rdi, gword ptr [rbx+0x20]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[ulong,System.__Canon]:get_Item(ulong):System.__Canon:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[ulong,System.__Canon]:get_Item(ulong):System.__Canon:this
mov r12, rax
test r13, r13
- je SHORT G_M21650_IG135
+ je SHORT G_M21650_IG143
;; size=33 bbWeight=4 PerfScore 48.00
-G_M21650_IG134:
+G_M21650_IG142:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 7
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rdi, r13
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov rdi, rax
mov esi, 34
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(ushort):System.Text.StringBuilder:this
;; size=70 bbWeight=2 PerfScore 29.00
-G_M21650_IG135:
+G_M21650_IG143:
mov rsi, gword ptr [rbx+0x38]
mov rdi, rbx
mov r8, r12
mov rcx, r12
mov rdx, 0xD1FFAB1E ; 'keyword'
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:WriteMessageAttrib(System.Text.StringBuilder,System.String,System.String,System.String):this
mov rsi, 0xD1FFAB1E
- lea r8, [rbp-0xE8]
+ lea r8, [rbp-0x118]
mov qword ptr [rsp], r8
mov r8, r15
mov r9d, 16
mov edx, 1
mov rdi, r14
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Number:<TryFormatUInt64>g__TryFormatUInt64Slow|39_0[ushort](ulong,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.Span`1[ushort],byref):ubyte
call [rax]System.Number:<TryFormatUInt64>g__TryFormatUInt64Slow|39_0[ushort](ulong,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.Span`1[ushort],byref):ubyte
- mov r14d, dword ptr [rbp-0xE8]
+ mov r14d, dword ptr [rbp-0x118]
cmp r14d, 16
- ja G_M21650_IG195
+ ja G_M21650_IG202
mov r13, gword ptr [rbx+0x38]
test r13, r13
- je SHORT G_M21650_IG137
+ je SHORT G_M21650_IG145
;; size=113 bbWeight=4 PerfScore 72.00
-G_M21650_IG136:
+G_M21650_IG144:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
cmp byte ptr [r13], r13b
mov rdi, r13
mov rsi, r15
mov edx, r14d
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
cmp byte ptr [r13], r13b
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 3
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=119 bbWeight=2 PerfScore 44.00
-G_M21650_IG137:
- lea rdi, [rbp-0xE0]
+G_M21650_IG145:
+ lea rdi, [rbp-0x110]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[ulong]:MoveNext():ubyte:this
call [rax]System.Collections.Generic.List`1+Enumerator[ulong]:MoveNext():ubyte:this
test eax, eax
- jne G_M21650_IG131
+ jne G_M21650_IG139
;; size=27 bbWeight=4 PerfScore 20.00
-G_M21650_IG138:
+G_M21650_IG146:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG139
+ je SHORT G_M21650_IG147
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=69 bbWeight=0.50 PerfScore 5.62
-G_M21650_IG139:
+G_M21650_IG147:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG141
+ je SHORT G_M21650_IG149
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG140:
+G_M21650_IG148:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG141:
+G_M21650_IG149:
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je SHORT G_M21650_IG143
+ je SHORT G_M21650_IG151
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG142:
+G_M21650_IG150:
mov rsi, gword ptr [rbx+0x40]
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.Text.StringBuilder):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:Append(System.Text.StringBuilder):System.Text.StringBuilder:this
;; size=16 bbWeight=0.50 PerfScore 2.62
-G_M21650_IG143:
+G_M21650_IG151:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG145
+ je SHORT G_M21650_IG153
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG144:
+G_M21650_IG152:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 10
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG145:
+G_M21650_IG153:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG147
+ je SHORT G_M21650_IG155
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG146:
+G_M21650_IG154:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG147:
+G_M21650_IG155:
mov rdi, gword ptr [rbx+0x48]
test rdi, rdi
- jne G_M21650_IG188
+ jne G_M21650_IG196
;; size=13 bbWeight=1 PerfScore 3.25
-G_M21650_IG148:
+G_M21650_IG156:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG149
+ je SHORT G_M21650_IG157
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 38
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=69 bbWeight=0.50 PerfScore 5.62
-G_M21650_IG149:
+G_M21650_IG157:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG151
+ je SHORT G_M21650_IG159
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG150:
+G_M21650_IG158:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 13
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG151:
+G_M21650_IG159:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG153
+ je SHORT G_M21650_IG161
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG152:
+G_M21650_IG160:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 11
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG153:
+G_M21650_IG161:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG155
+ je SHORT G_M21650_IG163
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG154:
+G_M21650_IG162:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG155:
+G_M21650_IG163:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG157
+ je SHORT G_M21650_IG165
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG156:
+G_M21650_IG164:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 18
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG157:
+G_M21650_IG165:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG159
+ je SHORT G_M21650_IG167
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG158:
+G_M21650_IG166:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 14
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG159:
+G_M21650_IG167:
mov rdi, gword ptr [rbx+0x30]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:this
mov rsi, gword ptr [rax+0x08]
mov edi, dword ptr [rsi+0x38]
sub edi, dword ptr [rsi+0x40]
movsxd rsi, edi
mov rdi, 0xD1FFAB1E ; System.String[]
call CORINFO_HELP_NEWARR_1_OBJ
mov r15, rax
mov rdi, gword ptr [rbx+0x30]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:get_Keys():System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:this
mov rdi, rax
mov rsi, r15
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
mov rcx, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rcx]
mov ecx, dword ptr [r15+0x08]
mov rsi, r15
mov rdi, 0xD1FFAB1E ; System.Array:Sort[System.String](System.String[],int,int,System.Collections.Generic.IComparer`1[System.String])
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Array:Sort[System.__Canon](System.__Canon[],int,int,System.Collections.Generic.IComparer`1[System.__Canon])
call [rax]System.Array:Sort[System.__Canon](System.__Canon[],int,int,System.Collections.Generic.IComparer`1[System.__Canon])
mov rax, 0xD1FFAB1E ; code for System.Globalization.CultureInfo:get_CurrentUICulture():System.Globalization.CultureInfo
call [rax]System.Globalization.CultureInfo:get_CurrentUICulture():System.Globalization.CultureInfo
mov r14, rax
mov r13, gword ptr [rbx+0x38]
test r13, r13
- je G_M21650_IG161
+ je G_M21650_IG169
;; size=161 bbWeight=1 PerfScore 47.25
-G_M21650_IG160:
+G_M21650_IG168:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 21
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rdi, r14
mov rax, qword ptr [r14]
mov rax, qword ptr [rax+0x40]
call [rax+0x38]System.Globalization.CultureInfo:get_Name():System.String:this
mov rsi, rax
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov r13, rax
cmp byte ptr [r13], r13b
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 2
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=130 bbWeight=0.50 PerfScore 14.62
-G_M21650_IG161:
+G_M21650_IG169:
mov r13, gword ptr [rbx+0x38]
test r13, r13
- je SHORT G_M21650_IG163
+ je SHORT G_M21650_IG171
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG162:
+G_M21650_IG170:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 15
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG163:
+G_M21650_IG171:
xor r13d, r13d
cmp dword ptr [r15+0x08], 0
- jle G_M21650_IG173
+ jle G_M21650_IG181
;; size=14 bbWeight=1 PerfScore 4.25
-G_M21650_IG164:
+G_M21650_IG172:
mov r12, gword ptr [r15+8*r13+0x10]
xor rax, rax
mov gword ptr [rbp-0x1C8], rax
cmp gword ptr [rbx+0x58], 0
- je G_M21650_IG168
+ je G_M21650_IG176
;; size=25 bbWeight=4 PerfScore 29.00
-G_M21650_IG165:
+G_M21650_IG173:
mov rdi, gword ptr [rbx+0x58]
mov rsi, r12
mov rdx, r14
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x48]
call [rcx+0x28]System.Resources.ResourceManager:GetString(System.String,System.Globalization.CultureInfo):System.String:this
test rax, rax
- je SHORT G_M21650_IG168
+ je SHORT G_M21650_IG176
mov rcx, rax
cmp dword ptr [r12+0x08], 6
- jl G_M21650_IG186
+ jl G_M21650_IG194
;; size=40 bbWeight=2 PerfScore 30.00
-G_M21650_IG166:
+G_M21650_IG174:
mov rdi, 0xD1FFAB1E
xor rdi, qword ptr [r12+0x0C]
mov esi, dword ptr [r12+0x14]
xor esi, 0xD1FFAB1E
or rdi, rsi
mov gword ptr [rbp-0x1C8], rcx
mov gword ptr [rbp-0x1D0], rax
- jne SHORT G_M21650_IG168
+ jne SHORT G_M21650_IG176
;; size=45 bbWeight=1 PerfScore 8.75
-G_M21650_IG167:
+G_M21650_IG175:
mov rdi, r12
mov esi, 6
mov rcx, 0xD1FFAB1E ; code for System.String:Substring(int):System.String:this
call [rcx]System.String:Substring(int):System.String:this
mov rdx, rax
mov rsi, gword ptr [rbp-0x1D0]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.ManifestBuilder:TranslateToManifestConvention(System.String,System.String):System.String:this
call [rax]System.Diagnostics.Tracing.ManifestBuilder:TranslateToManifestConvention(System.String,System.String):System.String:this
mov rdi, rax
mov gword ptr [rbp-0x1C8], rdi
;; size=55 bbWeight=2 PerfScore 19.50
-G_M21650_IG168:
+G_M21650_IG176:
cmp gword ptr [rbp-0x1C8], 0
- jne SHORT G_M21650_IG170
+ jne SHORT G_M21650_IG178
;; size=10 bbWeight=4 PerfScore 12.00
-G_M21650_IG169:
+G_M21650_IG177:
mov rdi, gword ptr [rbx+0x30]
cmp byte ptr [rdi], dil
mov rsi, r12
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je SHORT G_M21650_IG170
+ je SHORT G_M21650_IG178
mov rax, gword ptr [rax]
mov gword ptr [rbp-0x1C8], rax
;; size=37 bbWeight=2 PerfScore 25.50
-G_M21650_IG170:
+G_M21650_IG178:
mov rcx, gword ptr [rbx+0x38]
- mov gword ptr [rbp-0x168], rcx
+ mov gword ptr [rbp-0x1A0], rcx
test rcx, rcx
- je G_M21650_IG172
+ je G_M21650_IG180
;; size=20 bbWeight=4 PerfScore 17.00
-G_M21650_IG171:
+G_M21650_IG179:
mov rsi, 0xD1FFAB1E
mov rdi, rcx
mov edx, 15
mov r8, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [r8]System.Text.StringBuilder:Append(byref,int):this
- mov rdi, gword ptr [rbp-0x168]
+ mov rdi, gword ptr [rbp-0x1A0]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov r12, rax
cmp byte ptr [r12], r12b
mov rsi, 0xD1FFAB1E
mov rdi, r12
mov edx, 9
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rdi, r12
mov rsi, gword ptr [rbp-0x1C8]
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:Append(System.String):System.Text.StringBuilder:this
mov r12, rax
cmp byte ptr [r12], r12b
mov rsi, 0xD1FFAB1E
mov rdi, r12
mov edx, 3
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r12
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=181 bbWeight=2 PerfScore 69.00
-G_M21650_IG172:
+G_M21650_IG180:
inc r13d
cmp dword ptr [r15+0x08], r13d
- jg G_M21650_IG164
+ jg G_M21650_IG172
;; size=13 bbWeight=4 PerfScore 17.00
-G_M21650_IG173:
+G_M21650_IG181:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG175
+ je SHORT G_M21650_IG183
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG174:
+G_M21650_IG182:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 16
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG175:
+G_M21650_IG183:
mov r14, gword ptr [rbx+0x38]
test r14, r14
- je SHORT G_M21650_IG177
+ je SHORT G_M21650_IG185
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG176:
+G_M21650_IG184:
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 13
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r14
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG177:
+G_M21650_IG185:
mov r13, gword ptr [rbx+0x38]
test r13, r13
- je SHORT G_M21650_IG179
+ je SHORT G_M21650_IG187
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG178:
+G_M21650_IG186:
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 15
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r13
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG179:
+G_M21650_IG187:
mov r15, gword ptr [rbx+0x38]
test r15, r15
- je SHORT G_M21650_IG181
+ je SHORT G_M21650_IG189
;; size=9 bbWeight=1 PerfScore 3.25
-G_M21650_IG180:
+G_M21650_IG188:
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 26
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
mov rsi, 0xD1FFAB1E
mov rdi, r15
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this
call [rax]System.Text.StringBuilder:Append(byref,int):this
;; size=60 bbWeight=0.50 PerfScore 4.00
-G_M21650_IG181:
+G_M21650_IG189:
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- jne G_M21650_IG189
+ jne G_M21650_IG197
;; size=13 bbWeight=1 PerfScore 3.25
-G_M21650_IG182:
+G_M21650_IG190:
xor rax, rax
;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M21650_IG183:
+G_M21650_IG191:
mov rdi, 0xD1FFAB1E ; ''
test rax, rax
cmove rax, rdi
cmp qword ptr [rbp-0x30], 0xD1FFAB1E
- je SHORT G_M21650_IG184
+ je SHORT G_M21650_IG192
call CORINFO_HELP_FAIL_FAST
;; size=32 bbWeight=1 PerfScore 4.75
-G_M21650_IG184:
+G_M21650_IG192:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M21650_IG185:
+G_M21650_IG193:
vzeroupper
add rsp, 456
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=21 bbWeight=1 PerfScore 5.25
-G_M21650_IG186:
+G_M21650_IG194:
mov gword ptr [rbp-0x1C8], rcx
- jmp G_M21650_IG168
+ jmp G_M21650_IG176
;; size=12 bbWeight=1 PerfScore 3.00
-G_M21650_IG187:
+G_M21650_IG195:
mov rdx, rdi
- jmp G_M21650_IG99
+ jmp G_M21650_IG107
;; size=8 bbWeight=8 PerfScore 18.00
-G_M21650_IG188:
+G_M21650_IG196:
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:get_Length():int:this
call [rax]System.Text.StringBuilder:get_Length():int:this
test eax, eax
- jle G_M21650_IG148
+ jle G_M21650_IG156
mov rdi, gword ptr [rbx+0x38]
test rdi, rdi
- je G_M21650_IG149
+ je G_M21650_IG157
mov rsi, gword ptr [rbx+0x48]
mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(System.Text.StringBuilder):System.Text.StringBuilder:this
call [rax]System.Text.StringBuilder:Append(System.Text.StringBuilder):System.Text.StringBuilder:this
- jmp G_M21650_IG149
+ jmp G_M21650_IG157
;; size=54 bbWeight=0.50 PerfScore 7.50
-G_M21650_IG189:
+G_M21650_IG197:
cmp dword ptr [rdi], edi
mov rax, 0xD1FFAB1E
mov rax, qword ptr [rax]
call [rax+0x08]System.Object:ToString():System.String:this
- jmp G_M21650_IG183
+ jmp G_M21650_IG191
;; size=23 bbWeight=0.50 PerfScore 5.12
-G_M21650_IG190:
+G_M21650_IG198:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-G_M21650_IG191:
+G_M21650_IG199:
mov rdi, 0xD1FFAB1E
mov esi, 0x8A2
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
jmp G_M21650_IG15
;; size=25 bbWeight=0 PerfScore 0.00
-G_M21650_IG192:
+G_M21650_IG200:
mov rax, 0xD1FFAB1E ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
call [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M21650_IG193:
- mov edi, dword ptr [rbp-0x11C]
+G_M21650_IG201:
+ mov edi, r14d
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[int](int)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[int](int)
int3
- ;; size=19 bbWeight=0 PerfScore 0.00
-G_M21650_IG194:
- 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_M21650_IG195:
+ ;; size=16 bbWeight=0 PerfScore 0.00
+G_M21650_IG202:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-; Total bytes of code 8332, prolog size 72, PerfScore 4094.63, instruction count 1752, allocated bytes for code 8332 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (FullOpts)
+; Total bytes of code 8214, prolog size 88, PerfScore 4059.17, instruction count 1728, allocated bytes for code 8214 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (FullOpts)
-112 (-4.86 % of base) - System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+d__23[double,System.Nullable`1[int]]:MoveNext():this
; Assembly listing for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[double,System.Nullable`1[int]]: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; 37 single block inlinees; 19 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T08] ( 33, 42 ) byref -> [rbp-0x88] this EH-live single-def
-; V01 loc0 [V01,T16] ( 10, 18 ) int -> [rbp-0x14] do-not-enreg[Z] EH-live
-; V02 loc1 [V02,T10] ( 15, 26 ) ref -> [rbp-0x90] class-hnd exact EH-live spill-single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[double,System.Nullable`1[int]]>
-; V03 loc2 [V03,T54] ( 4, 3 ) ref -> [rbp-0x98] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x20] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V05 loc4 [V05,T15] ( 2, 12 ) struct (32) [rbp-0x40] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V06 loc5 [V06,T44] ( 2, 8 ) struct (16) [rbp-0x50] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V00 this [V00,T02] ( 33, 42 ) byref -> [rbp-0xA8] this EH-live single-def
+; V01 loc0 [V01,T04] ( 10, 18 ) int -> [rbp-0x1C] do-not-enreg[Z] EH-live
+; V02 loc1 [V02,T03] ( 15, 26 ) ref -> [rbp-0xB0] class-hnd exact EH-live single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[double,System.Nullable`1[int]]>
+; V03 loc2 [V03,T38] ( 4, 3 ) ref -> [rbp-0xB8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x28] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V05 loc4 [V05 ] ( 7, 20 ) struct (32) [rbp-0x48] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V06 loc5 [V06,T28] ( 2, 8 ) struct (16) [rbp-0x58] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V07 loc6 [V07 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op <System.Nullable`1[System.TimeSpan]>
-; V09 loc8 [V09,T35] ( 4, 12 ) ref -> [rbp-0xA0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V11 loc10 [V11,T17] ( 4, 16 ) ref -> registers class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
+; V09 loc8 [V09,T19] ( 4, 12 ) ref -> [rbp-0xC0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V11 loc10 [V11,T05] ( 4, 16 ) ref -> rax class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
;* V12 loc11 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V13 loc12 [V13,T42] ( 2, 8 ) ref -> [rbp-0xA8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
-; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x68] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V15 loc14 [V15,T39] ( 3, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
+; V13 loc12 [V13,T26] ( 2, 8 ) ref -> [rbp-0xC8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
+; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x70] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+; V15 loc14 [V15,T23] ( 3, 12 ) struct (16) [rbp-0x80] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V16 loc15 [V16 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V17 loc16 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
;* V18 loc17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Exception>
; V19 OutArgs [V19 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V20 tmp1 [V20 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V21 tmp2 [V21,T68] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
-; V22 tmp3 [V22,T69] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V23 tmp4 [V23,T70] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V21 tmp2 [V21,T52] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
+; V22 tmp3 [V22,T53] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V23 tmp4 [V23,T54] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V24 tmp5 [V24 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
-; V25 tmp6 [V25,T71] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V26 tmp7 [V26,T72] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V25 tmp6 [V25,T55] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V26 tmp7 [V26,T56] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V27 tmp8 [V27 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V28 tmp9 [V28 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
;* V29 tmp10 [V29 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V30 tmp11 [V30 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V31 tmp12 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V32 tmp13 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Nullable`1[int]>
-; V33 tmp14 [V33,T02] ( 7, 56 ) ref -> r15 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V33 tmp14 [V33,T01] ( 7, 56 ) ref -> r14 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
;* V34 tmp15 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
-; V35 tmp16 [V35,T75] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V36 tmp17 [V36,T33] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V37 tmp18 [V37,T56] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
-; V38 tmp19 [V38,T47] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-;* V39 tmp20 [V39 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V35 tmp16 [V35,T59] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V36 tmp17 [V36,T17] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V37 tmp18 [V37,T40] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
+; V38 tmp19 [V38,T30] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V39 tmp20 [V39,T34] ( 2, 4 ) struct (32) [rbp-0xA0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
;* V40 tmp21 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V41 tmp22 [V41,T18] ( 4, 16 ) ref -> registers class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V41 tmp22 [V41,T06] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V42 tmp23 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V43 tmp24 [V43,T19] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V43 tmp24 [V43,T07] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V44 tmp25 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V45 tmp26 [V45,T20] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V45 tmp26 [V45,T08] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V46 tmp27 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V47 tmp28 [V47,T36] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
-; V48 tmp29 [V48,T24] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
-; V49 tmp30 [V49,T37] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V47 tmp28 [V47,T20] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
+; V48 tmp29 [V48,T12] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
+; V49 tmp30 [V49,T21] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V50 tmp31 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V51 tmp32 [V51,T64] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V52 tmp33 [V52,T73] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V53 tmp34 [V53,T66] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V54 tmp35 [V54,T28] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V55 tmp36 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V56 tmp37 [V56,T48] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-;* V57 tmp38 [V57 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
-;* V58 tmp39 [V58 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V60 tmp41 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V61 tmp42 [V61 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-; V62 tmp43 [V62,T27] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
-; V63 tmp44 [V63,T29] ( 2, 16 ) short -> rdi "Inlining Arg"
-;* V64 tmp45 [V64 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V65 tmp46 [V65,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V66 tmp47 [V66,T21] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V67 tmp48 [V67,T38] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V68 tmp49 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V69 tmp50 [V69 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V70 tmp51 [V70 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V71 tmp52 [V71 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V72 tmp53 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V73 tmp54 [V73,T22] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V74 tmp55 [V74,T23] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V75 tmp56 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V76 tmp57 [V76,T65] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V77 tmp58 [V77,T74] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V78 tmp59 [V78,T67] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V79 tmp60 [V79,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V80 tmp61 [V80,T00] ( 9,144 ) byref -> rbx "Inlining Arg"
-; V81 tmp62 [V81,T09] ( 4, 32 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V82 tmp63 [V82,T34] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V83 tmp64 [V83,T57] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
-; V84 tmp65 [V84,T41] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
-;* V85 tmp66 [V85,T61] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
-; V86 tmp67 [V86,T49] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
-;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
-; V88 tmp69 [V88,T25] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
-; V89 tmp70 [V89,T26] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
-;* V90 tmp71 [V90 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
-;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
-;* V92 tmp73 [V92 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
-;* V93 tmp74 [V93 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
-;* V94 tmp75 [V94 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
-; V95 tmp76 [V95,T40] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
-;* V96 tmp77 [V96 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
-;* V97 tmp78 [V97 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
-;* V98 tmp79 [V98 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
-;* V99 tmp80 [V99,T52] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
-; V100 tmp81 [V100,T55] ( 3, 3 ) ref -> rsi single-def "field V57._list (fldOffset=0x0)" P-INDEP
-;* V101 tmp82 [V101,T60] ( 0, 0 ) ref -> zero-ref single-def "field V57._current (fldOffset=0x8)" P-INDEP
-;* V102 tmp83 [V102,T62] ( 0, 0 ) int -> zero-ref single-def "field V57._index (fldOffset=0x10)" P-INDEP
-; V103 tmp84 [V103,T58] ( 2, 2 ) int -> rbx single-def "field V57._version (fldOffset=0x14)" P-INDEP
-; V104 tmp85 [V104,T43] ( 2, 8 ) ref -> rsi "field V59._obj (fldOffset=0x0)" P-INDEP
-; V105 tmp86 [V105,T45] ( 2, 8 ) short -> rdi "field V59._token (fldOffset=0x8)" P-INDEP
-;* V106 tmp87 [V106,T53] ( 0, 0 ) ubyte -> zero-ref "field V59._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V107 tmp88 [V107 ] ( 0, 0 ) ref -> zero-ref "field V60._obj (fldOffset=0x0)" P-INDEP
-;* V108 tmp89 [V108 ] ( 0, 0 ) short -> zero-ref "field V60._token (fldOffset=0x8)" P-INDEP
-;* V109 tmp90 [V109 ] ( 0, 0 ) ubyte -> zero-ref "field V60._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V110 tmp91 [V110,T11] ( 4, 24 ) ref -> [rbp-0xB0] EH-live spill-single-def "V05.[000..008)"
-; V111 tmp92 [V111,T03] ( 6, 41 ) int -> [rbp-0x7C] do-not-enreg[Z] EH-live "V05.[008..012)"
-; V112 tmp93 [V112,T46] ( 2, 8 ) int -> [rbp-0x80] EH-live spill-single-def "V05.[012..016)"
-; V113 tmp94 [V113,T01] ( 14, 60 ) ref -> rbx "V05.[016..024)"
-;* V114 tmp95 [V114 ] ( 0, 0 ) ref -> zero-ref "V06.[000..008)"
-;* V115 tmp96 [V115 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
-;* V116 tmp97 [V116 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
-; V117 tmp98 [V117,T59] ( 2, 2 ) int -> rax single-def "V39.[012..016)"
-;* V118 tmp99 [V118 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[016..024)"
-; V119 tmp100 [V119,T04] ( 3, 48 ) byref -> rax "Spilling address for field-by-field copy"
-; V120 tmp101 [V120,T05] ( 3, 48 ) ref -> rax "arr expr"
-; V121 tmp102 [V121,T06] ( 3, 48 ) ref -> rdi "arr expr"
-; V122 tmp103 [V122,T07] ( 3, 48 ) int -> rsi "index expr"
-; V123 tmp104 [V123,T50] ( 2, 4 ) ref -> rsi "argument with side effect"
-; V124 PSPSym [V124,T63] ( 1, 1 ) long -> [rbp-0xB8] do-not-enreg[V] "PSPSym"
-; V125 cse0 [V125,T31] ( 2, 16 ) int -> rax "CSE #02: moderate"
-; V126 cse1 [V126,T13] ( 2, 16 ) int -> rax "CSE #03: moderate"
-; V127 cse2 [V127,T14] ( 3, 24 ) int -> rsi "CSE #05: moderate"
-; V128 cse3 [V128,T32] ( 2, 16 ) int -> rsi "CSE #06: moderate"
-; V129 cse4 [V129,T12] ( 3, 24 ) ref -> r15 "CSE #07: moderate"
+; V51 tmp32 [V51,T48] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V52 tmp33 [V52,T57] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V53 tmp34 [V53,T50] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V54 tmp35 [V54,T31] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+;* V55 tmp36 [V55 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
+;* V56 tmp37 [V56 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V57 tmp38 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V58 tmp39 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+; V60 tmp41 [V60,T15] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
+; V61 tmp42 [V61,T16] ( 2, 16 ) short -> rdi "Inlining Arg"
+;* V62 tmp43 [V62 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V63 tmp44 [V63,T35] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V64 tmp45 [V64,T09] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V65 tmp46 [V65,T22] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V66 tmp47 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V67 tmp48 [V67 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V68 tmp49 [V68 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V69 tmp50 [V69 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V70 tmp51 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V71 tmp52 [V71,T10] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V72 tmp53 [V72,T11] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V73 tmp54 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V74 tmp55 [V74,T49] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V75 tmp56 [V75,T58] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V76 tmp57 [V76,T51] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V77 tmp58 [V77,T18] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V78 tmp59 [V78,T41] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
+; V79 tmp60 [V79,T25] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
+;* V80 tmp61 [V80,T45] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
+; V81 tmp62 [V81,T32] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
+;* V82 tmp63 [V82 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
+; V83 tmp64 [V83,T13] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
+; V84 tmp65 [V84,T14] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
+;* V85 tmp66 [V85 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
+;* V86 tmp67 [V86 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
+;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
+;* V88 tmp69 [V88 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
+;* V89 tmp70 [V89 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
+; V90 tmp71 [V90,T24] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
+;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
+;* V92 tmp73 [V92 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
+;* V93 tmp74 [V93 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
+;* V94 tmp75 [V94,T36] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
+; V95 tmp76 [V95,T39] ( 3, 3 ) ref -> rsi single-def "field V55._list (fldOffset=0x0)" P-INDEP
+;* V96 tmp77 [V96,T44] ( 0, 0 ) ref -> zero-ref single-def "field V55._current (fldOffset=0x8)" P-INDEP
+;* V97 tmp78 [V97,T46] ( 0, 0 ) int -> zero-ref single-def "field V55._index (fldOffset=0x10)" P-INDEP
+; V98 tmp79 [V98,T42] ( 2, 2 ) int -> r15 single-def "field V55._version (fldOffset=0x14)" P-INDEP
+; V99 tmp80 [V99,T27] ( 2, 8 ) ref -> rsi "field V57._obj (fldOffset=0x0)" P-INDEP
+; V100 tmp81 [V100,T29] ( 2, 8 ) short -> rdi "field V57._token (fldOffset=0x8)" P-INDEP
+;* V101 tmp82 [V101,T37] ( 0, 0 ) ubyte -> zero-ref "field V57._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V102 tmp83 [V102 ] ( 0, 0 ) ref -> zero-ref "field V58._obj (fldOffset=0x0)" P-INDEP
+;* V103 tmp84 [V103 ] ( 0, 0 ) short -> zero-ref "field V58._token (fldOffset=0x8)" P-INDEP
+;* V104 tmp85 [V104 ] ( 0, 0 ) ubyte -> zero-ref "field V58._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V105 tmp86 [V105,T00] ( 14, 56 ) ref -> registers "V06.[000..008)"
+;* V106 tmp87 [V106 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
+;* V107 tmp88 [V107 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
+; V108 tmp89 [V108,T43] ( 2, 2 ) int -> rsi single-def "V39.[012..016)"
+; V109 tmp90 [V109,T33] ( 2, 4 ) ref -> rsi "argument with side effect"
+; V110 PSPSym [V110,T47] ( 1, 1 ) long -> [rbp-0xD8] do-not-enreg[V] "PSPSym"
;
-; Lcl frame size = 176
+; Lcl frame size = 200
G_M6454_IG01:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 176
- lea rbp, [rsp+0xC0]
+ sub rsp, 200
+ lea rbp, [rsp+0xE0]
xor eax, eax
- mov qword ptr [rbp-0xA8], rax
+ mov qword ptr [rbp-0xC8], rax
vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0xC0], ymm8
vmovdqu ymmword ptr [rbp-0xA0], ymm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
vmovdqu ymmword ptr [rbp-0x40], ymm8
- mov qword ptr [rbp-0x20], rax
- mov qword ptr [rbp-0xB8], rsp
- mov bword ptr [rbp-0x88], rdi
+ mov qword ptr [rbp-0xD8], rsp
+ mov bword ptr [rbp-0xA8], rdi
mov rdx, rdi
- ;; size=77 bbWeight=1 PerfScore 16.58
+ ;; size=83 bbWeight=1 PerfScore 18.58
G_M6454_IG02:
mov esi, dword ptr [rdx+0x10]
- mov dword ptr [rbp-0x14], esi
- mov r8, gword ptr [rdx]
- mov gword ptr [rbp-0x90], r8
+ mov dword ptr [rbp-0x1C], esi
+ mov rbx, gword ptr [rdx]
+ mov gword ptr [rbp-0xB0], rbx
;; size=16 bbWeight=1 PerfScore 6.00
G_M6454_IG03:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M6454_IG35
- mov rdi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0x98], rdi
+ mov rdi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xB8], rdi
xor esi, esi
- mov dword ptr [rbp-0x20], esi
+ mov dword ptr [rbp-0x28], esi
;; size=26 bbWeight=1 PerfScore 7.25
G_M6454_IG04:
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M6454_IG06
;; size=6 bbWeight=1 PerfScore 3.00
G_M6454_IG05:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M6454_IG06:
- lea rsi, [rbp-0x20]
+ lea rsi, [rbp-0x28]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- mov r8, gword ptr [rbp-0x90]
- cmp byte ptr [r8+0x40], 0
- jne G_M6454_IG09
- cmp byte ptr [r8+0x41], 0
+ cmp byte ptr [rbx+0x40], 0
+ jne SHORT G_M6454_IG09
+ cmp byte ptr [rbx+0x41], 0
je SHORT G_M6454_IG08
- mov rdi, gword ptr [r8+0x20]
+ mov rdi, gword ptr [rbx+0x20]
inc dword ptr [rdi+0x14]
mov edx, dword ptr [rdi+0x10]
xor esi, esi
mov dword ptr [rdi+0x10], esi
test edx, edx
jle SHORT G_M6454_IG07
mov rdi, gword ptr [rdi+0x08]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
- ;; size=71 bbWeight=1 PerfScore 25.50
+ ;; size=58 bbWeight=1 PerfScore 24.50
G_M6454_IG07:
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x20]
- mov rsi, gword ptr [r8+0x10]
+ mov rdi, gword ptr [rbx+0x20]
+ mov rsi, gword ptr [rbx+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 0
- mov r8, gword ptr [rbp-0x90]
- ;; size=48 bbWeight=1 PerfScore 14.25
+ mov byte ptr [rbx+0x41], 0
+ ;; size=26 bbWeight=1 PerfScore 11.25
G_M6454_IG08:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
jge SHORT G_M6454_IG11
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M6454_IG11
- mov rdi, gword ptr [rbp-0x98]
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
- mov r8, gword ptr [rbp-0x90]
jmp SHORT G_M6454_IG11
- ;; size=33 bbWeight=1 PerfScore 11.00
+ ;; size=26 bbWeight=1 PerfScore 10.00
G_M6454_IG09:
mov rdi, rsp
- call G_M6454_IG59
+ call G_M6454_IG56
;; size=8 bbWeight=1 PerfScore 1.25
G_M6454_IG10:
- jmp G_M6454_IG55
+ jmp G_M6454_IG52
;; size=5 bbWeight=1 PerfScore 2.00
G_M6454_IG11:
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x08], rdi
- mov rdi, gword ptr [r8+0x20]
- mov eax, dword ptr [rdi+0x14]
- mov gword ptr [rbp-0xB0], rdi
- xor ecx, ecx
- mov dword ptr [rbp-0x7C], ecx
- mov dword ptr [rbp-0x80], eax
- ;; size=35 bbWeight=1 PerfScore 9.50
+ mov rdi, gword ptr [rbx+0x20]
+ mov esi, dword ptr [rdi+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0x90], xmm0
+ ;; size=32 bbWeight=1 PerfScore 7.58
G_M6454_IG12:
- jmp G_M6454_IG30
- ;; size=5 bbWeight=1 PerfScore 2.00
+ vmovdqu ymm0, ymmword ptr [rbp-0xA0]
+ vmovdqu ymmword ptr [rbp-0x48], ymm0
+ ;; size=13 bbWeight=1 PerfScore 5.00
G_M6454_IG13:
- mov rax, qword ptr [rbp-0x28]
- mov qword ptr [rbp-0x48], rax
- cmp gword ptr [rbx+0x08], 0
- jne G_M6454_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6454_IG14
- mov rdi, rbx
- mov rcx, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- call [rcx]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M6454_IG15
- ;; size=53 bbWeight=4 PerfScore 70.00
+ mov gword ptr [rbp-0x48], rdi
+ xor edi, edi
+ mov dword ptr [rbp-0x40], edi
+ mov dword ptr [rbp-0x3C], esi
+ ;; size=12 bbWeight=1 PerfScore 3.25
G_M6454_IG14:
- mov rcx, gword ptr [rbx+0x18]
- mov rax, rcx
- ;; size=7 bbWeight=4 PerfScore 9.00
+ jmp G_M6454_IG32
+ ;; size=5 bbWeight=1 PerfScore 2.00
G_M6454_IG15:
+ mov rbx, gword ptr [rbp-0x38]
+ mov rdi, qword ptr [rbp-0x30]
+ mov qword ptr [rbp-0x50], rdi
+ cmp gword ptr [rbx+0x08], 0
+ jne G_M6454_IG32
+ mov r15, rbx
+ mov rbx, gword ptr [rbp-0xB0]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6454_IG16
+ mov rdi, r15
+ mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ jmp SHORT G_M6454_IG17
+ ;; size=57 bbWeight=4 PerfScore 71.00
+G_M6454_IG16:
+ mov rax, gword ptr [r15+0x18]
+ ;; size=4 bbWeight=4 PerfScore 8.00
+G_M6454_IG17:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- je G_M6454_IG26
+ je G_M6454_IG28
cmp rdx, 0xD1FFAB1E
- jle G_M6454_IG26
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xA0], rsi
+ jle G_M6454_IG28
+ mov rsi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xC0], rsi
xor esi, esi
- mov dword ptr [rbp-0x58], esi
- ;; size=57 bbWeight=4 PerfScore 60.00
-G_M6454_IG16:
- cmp byte ptr [rbp-0x58], 0
- jne G_M6454_IG20
- lea rsi, [rbp-0x58]
- mov rdi, gword ptr [rbp-0xA0]
+ mov dword ptr [rbp-0x60], esi
+ ;; size=50 bbWeight=4 PerfScore 56.00
+G_M6454_IG18:
+ cmp byte ptr [rbp-0x60], 0
+ jne G_M6454_IG22
+ lea rsi, [rbp-0x60]
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- cmp gword ptr [rbx+0x08], 0
- je G_M6454_IG21
- mov rdi, rbx
+ cmp gword ptr [r15+0x08], 0
+ je G_M6454_IG23
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
;; size=52 bbWeight=4 PerfScore 52.00
-G_M6454_IG17:
+G_M6454_IG19:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- jne G_M6454_IG22
+ jne G_M6454_IG24
xor edx, edx
;; size=23 bbWeight=4 PerfScore 35.00
-G_M6454_IG18:
+G_M6454_IG20:
cmp rdx, 0xD1FFAB1E
- jle G_M6454_IG25
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 1
- mov rdi, gword ptr [r8+0x10]
- mov rsi, qword ptr [rbp-0x48]
+ jle G_M6454_IG27
+ mov byte ptr [rbx+0x41], 1
+ mov rdi, gword ptr [rbx+0x10]
+ mov rsi, qword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
- mov r8, gword ptr [rbp-0x90]
- mov r15, gword ptr [r8+0x28]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6454_IG23
- mov rdi, rbx
+ mov r14, gword ptr [rbx+0x28]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6454_IG25
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- ;; size=80 bbWeight=4 PerfScore 92.00
-G_M6454_IG19:
- inc dword ptr [r15+0x14]
- mov rdi, gword ptr [r15+0x08]
- mov esi, dword ptr [r15+0x10]
+ ;; size=65 bbWeight=4 PerfScore 84.00
+G_M6454_IG21:
+ inc dword ptr [r14+0x14]
+ mov rdi, gword ptr [r14+0x08]
+ mov esi, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M6454_IG24
+ jbe SHORT G_M6454_IG26
lea edx, [rsi+0x01]
- mov dword ptr [r15+0x10], edx
+ mov dword ptr [r14+0x10], edx
movsxd rsi, esi
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6454_IG25
+ jmp SHORT G_M6454_IG27
;; size=44 bbWeight=4 PerfScore 73.00
-G_M6454_IG20:
+G_M6454_IG22:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M6454_IG21:
- mov rax, gword ptr [rbx+0x18]
- jmp G_M6454_IG17
+G_M6454_IG23:
+ mov rax, gword ptr [r15+0x18]
+ jmp G_M6454_IG19
;; size=9 bbWeight=4 PerfScore 16.00
-G_M6454_IG22:
- jmp G_M6454_IG18
+G_M6454_IG24:
+ jmp G_M6454_IG20
;; size=5 bbWeight=4 PerfScore 8.00
-G_M6454_IG23:
- mov rax, gword ptr [rbx+0x18]
- jmp SHORT G_M6454_IG19
+G_M6454_IG25:
+ mov rax, gword ptr [r15+0x18]
+ jmp SHORT G_M6454_IG21
;; size=6 bbWeight=4 PerfScore 16.00
-G_M6454_IG24:
- mov rdi, r15
+G_M6454_IG26:
+ mov rdi, r14
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
nop
;; size=19 bbWeight=4 PerfScore 16.00
-G_M6454_IG25:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6454_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M6454_IG30
- mov rdi, gword ptr [rbp-0xA0]
+G_M6454_IG27:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6454_IG32
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M6454_IG32
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
- jmp SHORT G_M6454_IG30
- ;; size=36 bbWeight=4 PerfScore 48.00
-G_M6454_IG26:
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6454_IG27
- mov rdi, rbx
+ jmp SHORT G_M6454_IG32
+ ;; size=26 bbWeight=4 PerfScore 40.00
+G_M6454_IG28:
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6454_IG29
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M6454_IG28
+ jmp SHORT G_M6454_IG30
;; size=24 bbWeight=4 PerfScore 38.00
-G_M6454_IG27:
- mov rax, gword ptr [rbx+0x18]
+G_M6454_IG29:
+ mov rax, gword ptr [r15+0x18]
;; size=4 bbWeight=4 PerfScore 8.00
-G_M6454_IG28:
+G_M6454_IG30:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Threading.RateLimiting.ReplenishingRateLimiter
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M6454_IG30
+ je SHORT G_M6454_IG32
;; size=30 bbWeight=4 PerfScore 20.00
-G_M6454_IG29:
- mov rcx, rax
- mov rdi, rcx
- mov rcx, qword ptr [rcx]
- mov rcx, qword ptr [rcx+0x48]
- call [rcx+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
- nop
- ;; size=17 bbWeight=4 PerfScore 31.00
-G_M6454_IG30:
- mov rdi, gword ptr [rbp-0xB0]
- mov eax, dword ptr [rdi+0x14]
- cmp dword ptr [rbp-0x80], eax
- jne SHORT G_M6454_IG32
- mov eax, dword ptr [rdi+0x10]
- cmp dword ptr [rbp-0x7C], eax
- jae SHORT G_M6454_IG33
- mov rax, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rax+0x08]
- cmp dword ptr [rbp-0x7C], ecx
- jae SHORT G_M6454_IG31
- mov ecx, dword ptr [rbp-0x7C]
- shl rcx, 4
- lea rax, bword ptr [rax+rcx+0x10]
- mov rbx, gword ptr [rax]
- mov rax, qword ptr [rax+0x08]
- mov qword ptr [rbp-0x28], rax
- mov eax, dword ptr [rbp-0x7C]
- inc eax
- mov dword ptr [rbp-0x7C], eax
- jmp G_M6454_IG13
- ;; size=71 bbWeight=8 PerfScore 238.00
G_M6454_IG31:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ mov rdi, rax
+ mov rax, qword ptr [rax]
+ mov rax, qword ptr [rax+0x48]
+ call [rax+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
+ nop
+ ;; size=14 bbWeight=4 PerfScore 30.00
G_M6454_IG32:
- 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
+ lea rdi, [rbp-0x48]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M6454_IG15
+ ;; size=34 bbWeight=8 PerfScore 42.00
G_M6454_IG33:
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x28]
- mov ebx, dword ptr [rsi+0x14]
- mov rdx, bword ptr [rbp-0x88]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rsi, gword ptr [rbx+0x28]
+ mov r15d, dword ptr [rsi+0x14]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x28], rdi
- ;; size=43 bbWeight=1 PerfScore 9.75
+ ;; size=44 bbWeight=1 PerfScore 9.75
G_M6454_IG34:
mov dword ptr [rdx+0x30], edi
- mov dword ptr [rdx+0x34], ebx
- mov r8, gword ptr [rbp-0x90]
- ;; size=13 bbWeight=1 PerfScore 3.00
+ mov dword ptr [rdx+0x34], r15d
+ ;; size=7 bbWeight=1 PerfScore 2.00
G_M6454_IG35:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je SHORT G_M6454_IG37
jmp G_M6454_IG45
;; size=11 bbWeight=1 PerfScore 5.00
G_M6454_IG36:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x28]
- mov gword ptr [rbp-0xA8], rdi
- mov r8, gword ptr [rbp-0x90]
+ mov gword ptr [rbp-0xC8], rdi
+ mov rbx, gword ptr [rbp-0xB0]
;; size=25 bbWeight=4 PerfScore 20.00
G_M6454_IG37:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M6454_IG41
- mov rdi, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x78], rax
- mov qword ptr [rbp-0x70], rdx
- mov rsi, gword ptr [rbp-0x78]
- movsx rdi, word ptr [rbp-0x70]
- mov gword ptr [rbp-0x68], rsi
- mov word ptr [rbp-0x60], di
- mov byte ptr [rbp-0x5E], 0
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov gword ptr [rbp-0x80], rax
+ mov qword ptr [rbp-0x78], rdx
+ mov rsi, gword ptr [rbp-0x80]
+ movsx rdi, word ptr [rbp-0x78]
+ mov gword ptr [rbp-0x70], rsi
+ mov word ptr [rbp-0x68], di
+ mov byte ptr [rbp-0x66], 0
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je G_M6454_IG43
- mov rsi, rbx
+ 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_M6454_IG38
test dword ptr [rax+0x34], 0xD1FFAB1E
jne G_M6454_IG43
jmp SHORT G_M6454_IG39
;; size=118 bbWeight=4 PerfScore 130.00
G_M6454_IG38:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
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_M6454_IG43
;; size=25 bbWeight=4 PerfScore 31.00
G_M6454_IG39:
xor edi, edi
- mov dword ptr [rbp-0x14], edi
+ mov dword ptr [rbp-0x1C], edi
;; size=5 bbWeight=1 PerfScore 1.25
G_M6454_IG40:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], edi
lea rdi, bword ptr [rdx+0x38]
- lea rsi, bword ptr [rbp-0x68]
+ lea rsi, bword ptr [rbp-0x70]
call CORINFO_HELP_ASSIGN_BYREF
movsq
lea rsi, bword ptr [rdx+0x18]
mov rdi, rdx
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[double,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[double,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rsi, rax
- lea rdi, [rbp-0x68]
+ lea rdi, [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M6454_IG50
+ jmp G_M6454_IG47
;; size=68 bbWeight=1 PerfScore 15.00
G_M6454_IG41:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
vmovdqu xmm0, xmmword ptr [rdx+0x38]
- vmovdqu xmmword ptr [rbp-0x68], xmm0
+ vmovdqu xmmword ptr [rbp-0x70], xmm0
;; size=17 bbWeight=4 PerfScore 24.00
G_M6454_IG42:
xor esi, esi
mov qword ptr [rdx+0x38], rsi
mov qword ptr [rdx+0x40], rsi
- mov dword ptr [rbp-0x14], -1
+ mov dword ptr [rbp-0x1C], -1
mov dword ptr [rdx+0x10], -1
;; size=24 bbWeight=4 PerfScore 17.00
G_M6454_IG43:
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je SHORT G_M6454_IG45
- mov rsi, rbx
+ 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_M6454_IG44
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M6454_IG45
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_M6454_IG45
;; size=75 bbWeight=4 PerfScore 66.00
G_M6454_IG44:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
nop
;; size=22 bbWeight=4 PerfScore 27.00
G_M6454_IG45:
- mov rdx, bword ptr [rbp-0x88]
- lea rbx, bword ptr [rdx+0x20]
- mov r15, gword ptr [rbx]
- mov rdi, r15
- mov esi, dword ptr [rbx+0x14]
- cmp esi, dword ptr [rdi+0x14]
- jne SHORT G_M6454_IG47
- mov esi, dword ptr [rbx+0x10]
- cmp esi, dword ptr [rdi+0x10]
- jae SHORT G_M6454_IG48
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae SHORT G_M6454_IG46
- mov rsi, gword ptr [rdi+8*rsi+0x10]
- lea rdi, bword ptr [rbx+0x08]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- inc dword ptr [rbx+0x10]
- jmp G_M6454_IG36
- ;; size=64 bbWeight=8 PerfScore 242.00
+ mov rdx, bword ptr [rbp-0xA8]
+ lea rdi, bword ptr [rdx+0x20]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M6454_IG36
+ ;; size=41 bbWeight=8 PerfScore 50.00
G_M6454_IG46:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M6454_IG47:
- 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_M6454_IG48:
- mov edi, dword ptr [r15+0x10]
- inc edi
- mov dword ptr [rbx+0x10], edi
- xor rdi, rdi
- mov gword ptr [rbx+0x08], rdi
- ;; size=15 bbWeight=8 PerfScore 36.00
-G_M6454_IG49:
- jmp SHORT G_M6454_IG52
+ jmp SHORT G_M6454_IG49
;; size=2 bbWeight=1 PerfScore 2.00
-G_M6454_IG50:
+G_M6454_IG47:
mov rdi, rsp
- call G_M6454_IG81
+ call G_M6454_IG78
;; size=8 bbWeight=1 PerfScore 1.25
-G_M6454_IG51:
- jmp G_M6454_IG57
+G_M6454_IG48:
+ jmp G_M6454_IG54
;; size=5 bbWeight=1 PerfScore 2.00
-G_M6454_IG52:
+G_M6454_IG49:
xor edi, edi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov qword ptr [rdx+0x20], rdi
mov qword ptr [rdx+0x28], rdi
mov qword ptr [rdx+0x30], rdi
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x28]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rdi, gword ptr [rbx+0x28]
inc dword ptr [rdi+0x14]
mov esi, dword ptr [rdi+0x10]
xor eax, eax
mov dword ptr [rdi+0x10], eax
test esi, esi
- jle SHORT G_M6454_IG53
+ jle SHORT G_M6454_IG50
mov rdi, gword ptr [rdi+0x08]
mov edx, esi
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
;; size=67 bbWeight=1 PerfScore 20.50
-G_M6454_IG53:
- mov rdx, bword ptr [rbp-0x88]
+G_M6454_IG50:
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- je SHORT G_M6454_IG55
+ je SHORT G_M6454_IG52
;; size=14 bbWeight=1 PerfScore 5.00
-G_M6454_IG54:
+G_M6454_IG51:
mov rdi, 0xD1FFAB1E ; System.AggregateException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rsi, gword ptr [rdx+0x08]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
call [rax]System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=53 bbWeight=0 PerfScore 0.00
-G_M6454_IG55:
- mov rdx, bword ptr [rbp-0x88]
+G_M6454_IG52:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
cmp gword ptr [rdi], 0
- jne SHORT G_M6454_IG56
+ jne SHORT G_M6454_IG53
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp SHORT G_M6454_IG57
+ jmp SHORT G_M6454_IG54
;; size=50 bbWeight=1 PerfScore 13.00
-G_M6454_IG56:
+G_M6454_IG53:
mov rdi, gword ptr [rdi]
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
;; size=20 bbWeight=1 PerfScore 6.50
-G_M6454_IG57:
+G_M6454_IG54:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M6454_IG58:
- add rsp, 176
+G_M6454_IG55:
+ vzeroupper
+ add rsp, 200
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=12 bbWeight=1 PerfScore 2.75
-G_M6454_IG59:
+ ;; size=17 bbWeight=1 PerfScore 4.25
+G_M6454_IG56:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M6454_IG60:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6454_IG61
- cmp byte ptr [rbp-0x20], 0
- je SHORT G_M6454_IG61
- mov rdi, gword ptr [rbp-0x98]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M6454_IG57:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6454_IG58
+ cmp byte ptr [rbp-0x28], 0
+ je SHORT G_M6454_IG58
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=1 PerfScore 8.00
-G_M6454_IG61:
+G_M6454_IG58:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M6454_IG62:
- add rsp, 16
+G_M6454_IG59:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M6454_IG63:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M6454_IG60:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG64:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6454_IG65
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M6454_IG65
- mov rdi, gword ptr [rbp-0xA0]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6454_IG61:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6454_IG62
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M6454_IG62
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG65:
+G_M6454_IG62:
nop
;; size=1 bbWeight=0 PerfScore 0.00
-G_M6454_IG66:
- add rsp, 16
+G_M6454_IG63:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6454_IG67:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6454_IG64:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG68:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6454_IG65:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M6454_IG69
+ jne SHORT G_M6454_IG66
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M6454_IG69:
- mov rdx, bword ptr [rbp-0x88]
+G_M6454_IG66:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M6454_IG70
+ jbe SHORT G_M6454_IG67
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6454_IG71
+ jmp SHORT G_M6454_IG68
;; size=55 bbWeight=0 PerfScore 0.00
-G_M6454_IG70:
+G_M6454_IG67:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M6454_IG71:
- lea rax, G_M6454_IG30
+G_M6454_IG68:
+ lea rax, G_M6454_IG32
;; size=7 bbWeight=0 PerfScore 0.00
-G_M6454_IG72:
- add rsp, 16
+G_M6454_IG69:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6454_IG73:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6454_IG70:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG74:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6454_IG71:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6454_IG75:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6454_IG72:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG76:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6454_IG73:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M6454_IG77
+ jne SHORT G_M6454_IG74
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M6454_IG77:
- mov rdx, bword ptr [rbp-0x88]
+G_M6454_IG74:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M6454_IG78
+ jbe SHORT G_M6454_IG75
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6454_IG79
+ jmp SHORT G_M6454_IG76
;; size=55 bbWeight=0 PerfScore 0.00
-G_M6454_IG78:
+G_M6454_IG75:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M6454_IG79:
+G_M6454_IG76:
lea rax, G_M6454_IG45
;; size=7 bbWeight=0 PerfScore 0.00
-G_M6454_IG80:
- add rsp, 16
+G_M6454_IG77:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6454_IG81:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6454_IG78:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M6454_IG82:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M6454_IG79:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M6454_IG83:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M6454_IG80:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6454_IG84:
- mov rdx, bword ptr [rbp-0x88]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6454_IG81:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
- lea rax, G_M6454_IG57
+ lea rax, G_M6454_IG54
;; size=43 bbWeight=0 PerfScore 0.00
-G_M6454_IG85:
- add rsp, 16
+G_M6454_IG82:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
+ ;; size=14 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2304, prolog size 77, PerfScore 1635.83, instruction count 574, allocated bytes for code 2304 (MethodHash=2c3fe6c9) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[double,System.Nullable`1[int]]:MoveNext():this (FullOpts)
+; Total bytes of code 2192, prolog size 83, PerfScore 1199.67, instruction count 549, allocated bytes for code 2192 (MethodHash=2c3fe6c9) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[double,System.Nullable`1[int]]:MoveNext():this (FullOpts)
-112 (-4.86 % of base) - System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+d__23[int,System.Nullable`1[int]]:MoveNext():this
; Assembly listing for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[int,System.Nullable`1[int]]: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; 37 single block inlinees; 19 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T08] ( 33, 42 ) byref -> [rbp-0x88] this EH-live single-def
-; V01 loc0 [V01,T16] ( 10, 18 ) int -> [rbp-0x14] do-not-enreg[Z] EH-live
-; V02 loc1 [V02,T10] ( 15, 26 ) ref -> [rbp-0x90] class-hnd exact EH-live spill-single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[int,System.Nullable`1[int]]>
-; V03 loc2 [V03,T54] ( 4, 3 ) ref -> [rbp-0x98] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x20] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V05 loc4 [V05,T15] ( 2, 12 ) struct (32) [rbp-0x40] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V06 loc5 [V06,T44] ( 2, 8 ) struct (16) [rbp-0x50] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V00 this [V00,T02] ( 33, 42 ) byref -> [rbp-0xA8] this EH-live single-def
+; V01 loc0 [V01,T04] ( 10, 18 ) int -> [rbp-0x1C] do-not-enreg[Z] EH-live
+; V02 loc1 [V02,T03] ( 15, 26 ) ref -> [rbp-0xB0] class-hnd exact EH-live single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[int,System.Nullable`1[int]]>
+; V03 loc2 [V03,T38] ( 4, 3 ) ref -> [rbp-0xB8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x28] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V05 loc4 [V05 ] ( 7, 20 ) struct (32) [rbp-0x48] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V06 loc5 [V06,T28] ( 2, 8 ) struct (16) [rbp-0x58] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V07 loc6 [V07 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op <System.Nullable`1[System.TimeSpan]>
-; V09 loc8 [V09,T35] ( 4, 12 ) ref -> [rbp-0xA0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V11 loc10 [V11,T17] ( 4, 16 ) ref -> registers class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
+; V09 loc8 [V09,T19] ( 4, 12 ) ref -> [rbp-0xC0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V11 loc10 [V11,T05] ( 4, 16 ) ref -> rax class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
;* V12 loc11 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V13 loc12 [V13,T42] ( 2, 8 ) ref -> [rbp-0xA8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
-; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x68] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V15 loc14 [V15,T39] ( 3, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
+; V13 loc12 [V13,T26] ( 2, 8 ) ref -> [rbp-0xC8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
+; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x70] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+; V15 loc14 [V15,T23] ( 3, 12 ) struct (16) [rbp-0x80] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V16 loc15 [V16 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V17 loc16 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
;* V18 loc17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Exception>
; V19 OutArgs [V19 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V20 tmp1 [V20 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V21 tmp2 [V21,T68] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
-; V22 tmp3 [V22,T69] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V23 tmp4 [V23,T70] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V21 tmp2 [V21,T52] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
+; V22 tmp3 [V22,T53] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V23 tmp4 [V23,T54] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V24 tmp5 [V24 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
-; V25 tmp6 [V25,T71] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V26 tmp7 [V26,T72] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V25 tmp6 [V25,T55] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V26 tmp7 [V26,T56] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V27 tmp8 [V27 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V28 tmp9 [V28 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
;* V29 tmp10 [V29 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V30 tmp11 [V30 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V31 tmp12 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V32 tmp13 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Nullable`1[int]>
-; V33 tmp14 [V33,T02] ( 7, 56 ) ref -> r15 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V33 tmp14 [V33,T01] ( 7, 56 ) ref -> r14 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
;* V34 tmp15 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
-; V35 tmp16 [V35,T75] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V36 tmp17 [V36,T33] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V37 tmp18 [V37,T56] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
-; V38 tmp19 [V38,T47] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-;* V39 tmp20 [V39 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V35 tmp16 [V35,T59] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V36 tmp17 [V36,T17] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V37 tmp18 [V37,T40] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
+; V38 tmp19 [V38,T30] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V39 tmp20 [V39,T34] ( 2, 4 ) struct (32) [rbp-0xA0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
;* V40 tmp21 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V41 tmp22 [V41,T18] ( 4, 16 ) ref -> registers class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V41 tmp22 [V41,T06] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V42 tmp23 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V43 tmp24 [V43,T19] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V43 tmp24 [V43,T07] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V44 tmp25 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V45 tmp26 [V45,T20] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V45 tmp26 [V45,T08] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V46 tmp27 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V47 tmp28 [V47,T36] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
-; V48 tmp29 [V48,T24] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
-; V49 tmp30 [V49,T37] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V47 tmp28 [V47,T20] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
+; V48 tmp29 [V48,T12] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
+; V49 tmp30 [V49,T21] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V50 tmp31 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V51 tmp32 [V51,T64] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V52 tmp33 [V52,T73] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V53 tmp34 [V53,T66] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V54 tmp35 [V54,T28] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V55 tmp36 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V56 tmp37 [V56,T48] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-;* V57 tmp38 [V57 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
-;* V58 tmp39 [V58 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V60 tmp41 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V61 tmp42 [V61 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-; V62 tmp43 [V62,T27] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
-; V63 tmp44 [V63,T29] ( 2, 16 ) short -> rdi "Inlining Arg"
-;* V64 tmp45 [V64 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V65 tmp46 [V65,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V66 tmp47 [V66,T21] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V67 tmp48 [V67,T38] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V68 tmp49 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V69 tmp50 [V69 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V70 tmp51 [V70 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V71 tmp52 [V71 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V72 tmp53 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V73 tmp54 [V73,T22] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V74 tmp55 [V74,T23] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V75 tmp56 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V76 tmp57 [V76,T65] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V77 tmp58 [V77,T74] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V78 tmp59 [V78,T67] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V79 tmp60 [V79,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V80 tmp61 [V80,T00] ( 9,144 ) byref -> rbx "Inlining Arg"
-; V81 tmp62 [V81,T09] ( 4, 32 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V82 tmp63 [V82,T34] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V83 tmp64 [V83,T57] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
-; V84 tmp65 [V84,T41] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
-;* V85 tmp66 [V85,T61] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
-; V86 tmp67 [V86,T49] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
-;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
-; V88 tmp69 [V88,T25] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
-; V89 tmp70 [V89,T26] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
-;* V90 tmp71 [V90 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
-;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
-;* V92 tmp73 [V92 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
-;* V93 tmp74 [V93 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
-;* V94 tmp75 [V94 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
-; V95 tmp76 [V95,T40] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
-;* V96 tmp77 [V96 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
-;* V97 tmp78 [V97 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
-;* V98 tmp79 [V98 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
-;* V99 tmp80 [V99,T52] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
-; V100 tmp81 [V100,T55] ( 3, 3 ) ref -> rsi single-def "field V57._list (fldOffset=0x0)" P-INDEP
-;* V101 tmp82 [V101,T60] ( 0, 0 ) ref -> zero-ref single-def "field V57._current (fldOffset=0x8)" P-INDEP
-;* V102 tmp83 [V102,T62] ( 0, 0 ) int -> zero-ref single-def "field V57._index (fldOffset=0x10)" P-INDEP
-; V103 tmp84 [V103,T58] ( 2, 2 ) int -> rbx single-def "field V57._version (fldOffset=0x14)" P-INDEP
-; V104 tmp85 [V104,T43] ( 2, 8 ) ref -> rsi "field V59._obj (fldOffset=0x0)" P-INDEP
-; V105 tmp86 [V105,T45] ( 2, 8 ) short -> rdi "field V59._token (fldOffset=0x8)" P-INDEP
-;* V106 tmp87 [V106,T53] ( 0, 0 ) ubyte -> zero-ref "field V59._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V107 tmp88 [V107 ] ( 0, 0 ) ref -> zero-ref "field V60._obj (fldOffset=0x0)" P-INDEP
-;* V108 tmp89 [V108 ] ( 0, 0 ) short -> zero-ref "field V60._token (fldOffset=0x8)" P-INDEP
-;* V109 tmp90 [V109 ] ( 0, 0 ) ubyte -> zero-ref "field V60._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V110 tmp91 [V110,T11] ( 4, 24 ) ref -> [rbp-0xB0] EH-live spill-single-def "V05.[000..008)"
-; V111 tmp92 [V111,T03] ( 6, 41 ) int -> [rbp-0x7C] do-not-enreg[Z] EH-live "V05.[008..012)"
-; V112 tmp93 [V112,T46] ( 2, 8 ) int -> [rbp-0x80] EH-live spill-single-def "V05.[012..016)"
-; V113 tmp94 [V113,T01] ( 14, 60 ) ref -> rbx "V05.[016..024)"
-;* V114 tmp95 [V114 ] ( 0, 0 ) ref -> zero-ref "V06.[000..008)"
-;* V115 tmp96 [V115 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
-;* V116 tmp97 [V116 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
-; V117 tmp98 [V117,T59] ( 2, 2 ) int -> rax single-def "V39.[012..016)"
-;* V118 tmp99 [V118 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[016..024)"
-; V119 tmp100 [V119,T04] ( 3, 48 ) byref -> rax "Spilling address for field-by-field copy"
-; V120 tmp101 [V120,T05] ( 3, 48 ) ref -> rax "arr expr"
-; V121 tmp102 [V121,T06] ( 3, 48 ) ref -> rdi "arr expr"
-; V122 tmp103 [V122,T07] ( 3, 48 ) int -> rsi "index expr"
-; V123 tmp104 [V123,T50] ( 2, 4 ) ref -> rsi "argument with side effect"
-; V124 PSPSym [V124,T63] ( 1, 1 ) long -> [rbp-0xB8] do-not-enreg[V] "PSPSym"
-; V125 cse0 [V125,T31] ( 2, 16 ) int -> rax "CSE #02: moderate"
-; V126 cse1 [V126,T13] ( 2, 16 ) int -> rax "CSE #03: moderate"
-; V127 cse2 [V127,T14] ( 3, 24 ) int -> rsi "CSE #05: moderate"
-; V128 cse3 [V128,T32] ( 2, 16 ) int -> rsi "CSE #06: moderate"
-; V129 cse4 [V129,T12] ( 3, 24 ) ref -> r15 "CSE #07: moderate"
+; V51 tmp32 [V51,T48] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V52 tmp33 [V52,T57] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V53 tmp34 [V53,T50] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V54 tmp35 [V54,T31] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+;* V55 tmp36 [V55 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
+;* V56 tmp37 [V56 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V57 tmp38 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V58 tmp39 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+; V60 tmp41 [V60,T15] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
+; V61 tmp42 [V61,T16] ( 2, 16 ) short -> rdi "Inlining Arg"
+;* V62 tmp43 [V62 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V63 tmp44 [V63,T35] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V64 tmp45 [V64,T09] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V65 tmp46 [V65,T22] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V66 tmp47 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V67 tmp48 [V67 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V68 tmp49 [V68 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V69 tmp50 [V69 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V70 tmp51 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V71 tmp52 [V71,T10] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V72 tmp53 [V72,T11] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V73 tmp54 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V74 tmp55 [V74,T49] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V75 tmp56 [V75,T58] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V76 tmp57 [V76,T51] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V77 tmp58 [V77,T18] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V78 tmp59 [V78,T41] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
+; V79 tmp60 [V79,T25] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
+;* V80 tmp61 [V80,T45] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
+; V81 tmp62 [V81,T32] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
+;* V82 tmp63 [V82 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
+; V83 tmp64 [V83,T13] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
+; V84 tmp65 [V84,T14] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
+;* V85 tmp66 [V85 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
+;* V86 tmp67 [V86 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
+;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
+;* V88 tmp69 [V88 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
+;* V89 tmp70 [V89 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
+; V90 tmp71 [V90,T24] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
+;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
+;* V92 tmp73 [V92 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
+;* V93 tmp74 [V93 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
+;* V94 tmp75 [V94,T36] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
+; V95 tmp76 [V95,T39] ( 3, 3 ) ref -> rsi single-def "field V55._list (fldOffset=0x0)" P-INDEP
+;* V96 tmp77 [V96,T44] ( 0, 0 ) ref -> zero-ref single-def "field V55._current (fldOffset=0x8)" P-INDEP
+;* V97 tmp78 [V97,T46] ( 0, 0 ) int -> zero-ref single-def "field V55._index (fldOffset=0x10)" P-INDEP
+; V98 tmp79 [V98,T42] ( 2, 2 ) int -> r15 single-def "field V55._version (fldOffset=0x14)" P-INDEP
+; V99 tmp80 [V99,T27] ( 2, 8 ) ref -> rsi "field V57._obj (fldOffset=0x0)" P-INDEP
+; V100 tmp81 [V100,T29] ( 2, 8 ) short -> rdi "field V57._token (fldOffset=0x8)" P-INDEP
+;* V101 tmp82 [V101,T37] ( 0, 0 ) ubyte -> zero-ref "field V57._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V102 tmp83 [V102 ] ( 0, 0 ) ref -> zero-ref "field V58._obj (fldOffset=0x0)" P-INDEP
+;* V103 tmp84 [V103 ] ( 0, 0 ) short -> zero-ref "field V58._token (fldOffset=0x8)" P-INDEP
+;* V104 tmp85 [V104 ] ( 0, 0 ) ubyte -> zero-ref "field V58._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V105 tmp86 [V105,T00] ( 14, 56 ) ref -> registers "V06.[000..008)"
+;* V106 tmp87 [V106 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
+;* V107 tmp88 [V107 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
+; V108 tmp89 [V108,T43] ( 2, 2 ) int -> rsi single-def "V39.[012..016)"
+; V109 tmp90 [V109,T33] ( 2, 4 ) ref -> rsi "argument with side effect"
+; V110 PSPSym [V110,T47] ( 1, 1 ) long -> [rbp-0xD8] do-not-enreg[V] "PSPSym"
;
-; Lcl frame size = 176
+; Lcl frame size = 200
G_M9968_IG01:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 176
- lea rbp, [rsp+0xC0]
+ sub rsp, 200
+ lea rbp, [rsp+0xE0]
xor eax, eax
- mov qword ptr [rbp-0xA8], rax
+ mov qword ptr [rbp-0xC8], rax
vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0xC0], ymm8
vmovdqu ymmword ptr [rbp-0xA0], ymm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
vmovdqu ymmword ptr [rbp-0x40], ymm8
- mov qword ptr [rbp-0x20], rax
- mov qword ptr [rbp-0xB8], rsp
- mov bword ptr [rbp-0x88], rdi
+ mov qword ptr [rbp-0xD8], rsp
+ mov bword ptr [rbp-0xA8], rdi
mov rdx, rdi
- ;; size=77 bbWeight=1 PerfScore 16.58
+ ;; size=83 bbWeight=1 PerfScore 18.58
G_M9968_IG02:
mov esi, dword ptr [rdx+0x10]
- mov dword ptr [rbp-0x14], esi
- mov r8, gword ptr [rdx]
- mov gword ptr [rbp-0x90], r8
+ mov dword ptr [rbp-0x1C], esi
+ mov rbx, gword ptr [rdx]
+ mov gword ptr [rbp-0xB0], rbx
;; size=16 bbWeight=1 PerfScore 6.00
G_M9968_IG03:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M9968_IG35
- mov rdi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0x98], rdi
+ mov rdi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xB8], rdi
xor esi, esi
- mov dword ptr [rbp-0x20], esi
+ mov dword ptr [rbp-0x28], esi
;; size=26 bbWeight=1 PerfScore 7.25
G_M9968_IG04:
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M9968_IG06
;; size=6 bbWeight=1 PerfScore 3.00
G_M9968_IG05:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M9968_IG06:
- lea rsi, [rbp-0x20]
+ lea rsi, [rbp-0x28]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- mov r8, gword ptr [rbp-0x90]
- cmp byte ptr [r8+0x40], 0
- jne G_M9968_IG09
- cmp byte ptr [r8+0x41], 0
+ cmp byte ptr [rbx+0x40], 0
+ jne SHORT G_M9968_IG09
+ cmp byte ptr [rbx+0x41], 0
je SHORT G_M9968_IG08
- mov rdi, gword ptr [r8+0x20]
+ mov rdi, gword ptr [rbx+0x20]
inc dword ptr [rdi+0x14]
mov edx, dword ptr [rdi+0x10]
xor esi, esi
mov dword ptr [rdi+0x10], esi
test edx, edx
jle SHORT G_M9968_IG07
mov rdi, gword ptr [rdi+0x08]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
- ;; size=71 bbWeight=1 PerfScore 25.50
+ ;; size=58 bbWeight=1 PerfScore 24.50
G_M9968_IG07:
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x20]
- mov rsi, gword ptr [r8+0x10]
+ mov rdi, gword ptr [rbx+0x20]
+ mov rsi, gword ptr [rbx+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 0
- mov r8, gword ptr [rbp-0x90]
- ;; size=48 bbWeight=1 PerfScore 14.25
+ mov byte ptr [rbx+0x41], 0
+ ;; size=26 bbWeight=1 PerfScore 11.25
G_M9968_IG08:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
jge SHORT G_M9968_IG11
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M9968_IG11
- mov rdi, gword ptr [rbp-0x98]
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
- mov r8, gword ptr [rbp-0x90]
jmp SHORT G_M9968_IG11
- ;; size=33 bbWeight=1 PerfScore 11.00
+ ;; size=26 bbWeight=1 PerfScore 10.00
G_M9968_IG09:
mov rdi, rsp
- call G_M9968_IG59
+ call G_M9968_IG56
;; size=8 bbWeight=1 PerfScore 1.25
G_M9968_IG10:
- jmp G_M9968_IG55
+ jmp G_M9968_IG52
;; size=5 bbWeight=1 PerfScore 2.00
G_M9968_IG11:
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x08], rdi
- mov rdi, gword ptr [r8+0x20]
- mov eax, dword ptr [rdi+0x14]
- mov gword ptr [rbp-0xB0], rdi
- xor ecx, ecx
- mov dword ptr [rbp-0x7C], ecx
- mov dword ptr [rbp-0x80], eax
- ;; size=35 bbWeight=1 PerfScore 9.50
+ mov rdi, gword ptr [rbx+0x20]
+ mov esi, dword ptr [rdi+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0x90], xmm0
+ ;; size=32 bbWeight=1 PerfScore 7.58
G_M9968_IG12:
- jmp G_M9968_IG30
- ;; size=5 bbWeight=1 PerfScore 2.00
+ vmovdqu ymm0, ymmword ptr [rbp-0xA0]
+ vmovdqu ymmword ptr [rbp-0x48], ymm0
+ ;; size=13 bbWeight=1 PerfScore 5.00
G_M9968_IG13:
- mov rax, qword ptr [rbp-0x28]
- mov qword ptr [rbp-0x48], rax
- cmp gword ptr [rbx+0x08], 0
- jne G_M9968_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M9968_IG14
- mov rdi, rbx
- mov rcx, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- call [rcx]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M9968_IG15
- ;; size=53 bbWeight=4 PerfScore 70.00
+ mov gword ptr [rbp-0x48], rdi
+ xor edi, edi
+ mov dword ptr [rbp-0x40], edi
+ mov dword ptr [rbp-0x3C], esi
+ ;; size=12 bbWeight=1 PerfScore 3.25
G_M9968_IG14:
- mov rcx, gword ptr [rbx+0x18]
- mov rax, rcx
- ;; size=7 bbWeight=4 PerfScore 9.00
+ jmp G_M9968_IG32
+ ;; size=5 bbWeight=1 PerfScore 2.00
G_M9968_IG15:
+ mov rbx, gword ptr [rbp-0x38]
+ mov rdi, qword ptr [rbp-0x30]
+ mov qword ptr [rbp-0x50], rdi
+ cmp gword ptr [rbx+0x08], 0
+ jne G_M9968_IG32
+ mov r15, rbx
+ mov rbx, gword ptr [rbp-0xB0]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M9968_IG16
+ mov rdi, r15
+ mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ jmp SHORT G_M9968_IG17
+ ;; size=57 bbWeight=4 PerfScore 71.00
+G_M9968_IG16:
+ mov rax, gword ptr [r15+0x18]
+ ;; size=4 bbWeight=4 PerfScore 8.00
+G_M9968_IG17:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- je G_M9968_IG26
+ je G_M9968_IG28
cmp rdx, 0xD1FFAB1E
- jle G_M9968_IG26
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xA0], rsi
+ jle G_M9968_IG28
+ mov rsi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xC0], rsi
xor esi, esi
- mov dword ptr [rbp-0x58], esi
- ;; size=57 bbWeight=4 PerfScore 60.00
-G_M9968_IG16:
- cmp byte ptr [rbp-0x58], 0
- jne G_M9968_IG20
- lea rsi, [rbp-0x58]
- mov rdi, gword ptr [rbp-0xA0]
+ mov dword ptr [rbp-0x60], esi
+ ;; size=50 bbWeight=4 PerfScore 56.00
+G_M9968_IG18:
+ cmp byte ptr [rbp-0x60], 0
+ jne G_M9968_IG22
+ lea rsi, [rbp-0x60]
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- cmp gword ptr [rbx+0x08], 0
- je G_M9968_IG21
- mov rdi, rbx
+ cmp gword ptr [r15+0x08], 0
+ je G_M9968_IG23
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
;; size=52 bbWeight=4 PerfScore 52.00
-G_M9968_IG17:
+G_M9968_IG19:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- jne G_M9968_IG22
+ jne G_M9968_IG24
xor edx, edx
;; size=23 bbWeight=4 PerfScore 35.00
-G_M9968_IG18:
+G_M9968_IG20:
cmp rdx, 0xD1FFAB1E
- jle G_M9968_IG25
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 1
- mov rdi, gword ptr [r8+0x10]
- mov rsi, qword ptr [rbp-0x48]
+ jle G_M9968_IG27
+ mov byte ptr [rbx+0x41], 1
+ mov rdi, gword ptr [rbx+0x10]
+ mov rsi, qword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
- mov r8, gword ptr [rbp-0x90]
- mov r15, gword ptr [r8+0x28]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M9968_IG23
- mov rdi, rbx
+ mov r14, gword ptr [rbx+0x28]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M9968_IG25
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- ;; size=80 bbWeight=4 PerfScore 92.00
-G_M9968_IG19:
- inc dword ptr [r15+0x14]
- mov rdi, gword ptr [r15+0x08]
- mov esi, dword ptr [r15+0x10]
+ ;; size=65 bbWeight=4 PerfScore 84.00
+G_M9968_IG21:
+ inc dword ptr [r14+0x14]
+ mov rdi, gword ptr [r14+0x08]
+ mov esi, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M9968_IG24
+ jbe SHORT G_M9968_IG26
lea edx, [rsi+0x01]
- mov dword ptr [r15+0x10], edx
+ mov dword ptr [r14+0x10], edx
movsxd rsi, esi
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M9968_IG25
+ jmp SHORT G_M9968_IG27
;; size=44 bbWeight=4 PerfScore 73.00
-G_M9968_IG20:
+G_M9968_IG22:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M9968_IG21:
- mov rax, gword ptr [rbx+0x18]
- jmp G_M9968_IG17
+G_M9968_IG23:
+ mov rax, gword ptr [r15+0x18]
+ jmp G_M9968_IG19
;; size=9 bbWeight=4 PerfScore 16.00
-G_M9968_IG22:
- jmp G_M9968_IG18
+G_M9968_IG24:
+ jmp G_M9968_IG20
;; size=5 bbWeight=4 PerfScore 8.00
-G_M9968_IG23:
- mov rax, gword ptr [rbx+0x18]
- jmp SHORT G_M9968_IG19
+G_M9968_IG25:
+ mov rax, gword ptr [r15+0x18]
+ jmp SHORT G_M9968_IG21
;; size=6 bbWeight=4 PerfScore 16.00
-G_M9968_IG24:
- mov rdi, r15
+G_M9968_IG26:
+ mov rdi, r14
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
nop
;; size=19 bbWeight=4 PerfScore 16.00
-G_M9968_IG25:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M9968_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M9968_IG30
- mov rdi, gword ptr [rbp-0xA0]
+G_M9968_IG27:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M9968_IG32
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M9968_IG32
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
- jmp SHORT G_M9968_IG30
- ;; size=36 bbWeight=4 PerfScore 48.00
-G_M9968_IG26:
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M9968_IG27
- mov rdi, rbx
+ jmp SHORT G_M9968_IG32
+ ;; size=26 bbWeight=4 PerfScore 40.00
+G_M9968_IG28:
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M9968_IG29
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M9968_IG28
+ jmp SHORT G_M9968_IG30
;; size=24 bbWeight=4 PerfScore 38.00
-G_M9968_IG27:
- mov rax, gword ptr [rbx+0x18]
+G_M9968_IG29:
+ mov rax, gword ptr [r15+0x18]
;; size=4 bbWeight=4 PerfScore 8.00
-G_M9968_IG28:
+G_M9968_IG30:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Threading.RateLimiting.ReplenishingRateLimiter
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M9968_IG30
+ je SHORT G_M9968_IG32
;; size=30 bbWeight=4 PerfScore 20.00
-G_M9968_IG29:
- mov rcx, rax
- mov rdi, rcx
- mov rcx, qword ptr [rcx]
- mov rcx, qword ptr [rcx+0x48]
- call [rcx+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
- nop
- ;; size=17 bbWeight=4 PerfScore 31.00
-G_M9968_IG30:
- mov rdi, gword ptr [rbp-0xB0]
- mov eax, dword ptr [rdi+0x14]
- cmp dword ptr [rbp-0x80], eax
- jne SHORT G_M9968_IG32
- mov eax, dword ptr [rdi+0x10]
- cmp dword ptr [rbp-0x7C], eax
- jae SHORT G_M9968_IG33
- mov rax, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rax+0x08]
- cmp dword ptr [rbp-0x7C], ecx
- jae SHORT G_M9968_IG31
- mov ecx, dword ptr [rbp-0x7C]
- shl rcx, 4
- lea rax, bword ptr [rax+rcx+0x10]
- mov rbx, gword ptr [rax]
- mov rax, qword ptr [rax+0x08]
- mov qword ptr [rbp-0x28], rax
- mov eax, dword ptr [rbp-0x7C]
- inc eax
- mov dword ptr [rbp-0x7C], eax
- jmp G_M9968_IG13
- ;; size=71 bbWeight=8 PerfScore 238.00
G_M9968_IG31:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ mov rdi, rax
+ mov rax, qword ptr [rax]
+ mov rax, qword ptr [rax+0x48]
+ call [rax+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
+ nop
+ ;; size=14 bbWeight=4 PerfScore 30.00
G_M9968_IG32:
- 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
+ lea rdi, [rbp-0x48]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M9968_IG15
+ ;; size=34 bbWeight=8 PerfScore 42.00
G_M9968_IG33:
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x28]
- mov ebx, dword ptr [rsi+0x14]
- mov rdx, bword ptr [rbp-0x88]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rsi, gword ptr [rbx+0x28]
+ mov r15d, dword ptr [rsi+0x14]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x28], rdi
- ;; size=43 bbWeight=1 PerfScore 9.75
+ ;; size=44 bbWeight=1 PerfScore 9.75
G_M9968_IG34:
mov dword ptr [rdx+0x30], edi
- mov dword ptr [rdx+0x34], ebx
- mov r8, gword ptr [rbp-0x90]
- ;; size=13 bbWeight=1 PerfScore 3.00
+ mov dword ptr [rdx+0x34], r15d
+ ;; size=7 bbWeight=1 PerfScore 2.00
G_M9968_IG35:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je SHORT G_M9968_IG37
jmp G_M9968_IG45
;; size=11 bbWeight=1 PerfScore 5.00
G_M9968_IG36:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x28]
- mov gword ptr [rbp-0xA8], rdi
- mov r8, gword ptr [rbp-0x90]
+ mov gword ptr [rbp-0xC8], rdi
+ mov rbx, gword ptr [rbp-0xB0]
;; size=25 bbWeight=4 PerfScore 20.00
G_M9968_IG37:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M9968_IG41
- mov rdi, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x78], rax
- mov qword ptr [rbp-0x70], rdx
- mov rsi, gword ptr [rbp-0x78]
- movsx rdi, word ptr [rbp-0x70]
- mov gword ptr [rbp-0x68], rsi
- mov word ptr [rbp-0x60], di
- mov byte ptr [rbp-0x5E], 0
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov gword ptr [rbp-0x80], rax
+ mov qword ptr [rbp-0x78], rdx
+ mov rsi, gword ptr [rbp-0x80]
+ movsx rdi, word ptr [rbp-0x78]
+ mov gword ptr [rbp-0x70], rsi
+ mov word ptr [rbp-0x68], di
+ mov byte ptr [rbp-0x66], 0
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je G_M9968_IG43
- mov rsi, rbx
+ 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_M9968_IG38
test dword ptr [rax+0x34], 0xD1FFAB1E
jne G_M9968_IG43
jmp SHORT G_M9968_IG39
;; size=118 bbWeight=4 PerfScore 130.00
G_M9968_IG38:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
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_M9968_IG43
;; size=25 bbWeight=4 PerfScore 31.00
G_M9968_IG39:
xor edi, edi
- mov dword ptr [rbp-0x14], edi
+ mov dword ptr [rbp-0x1C], edi
;; size=5 bbWeight=1 PerfScore 1.25
G_M9968_IG40:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], edi
lea rdi, bword ptr [rdx+0x38]
- lea rsi, bword ptr [rbp-0x68]
+ lea rsi, bword ptr [rbp-0x70]
call CORINFO_HELP_ASSIGN_BYREF
movsq
lea rsi, bword ptr [rdx+0x18]
mov rdi, rdx
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[int,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[int,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rsi, rax
- lea rdi, [rbp-0x68]
+ lea rdi, [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M9968_IG50
+ jmp G_M9968_IG47
;; size=68 bbWeight=1 PerfScore 15.00
G_M9968_IG41:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
vmovdqu xmm0, xmmword ptr [rdx+0x38]
- vmovdqu xmmword ptr [rbp-0x68], xmm0
+ vmovdqu xmmword ptr [rbp-0x70], xmm0
;; size=17 bbWeight=4 PerfScore 24.00
G_M9968_IG42:
xor esi, esi
mov qword ptr [rdx+0x38], rsi
mov qword ptr [rdx+0x40], rsi
- mov dword ptr [rbp-0x14], -1
+ mov dword ptr [rbp-0x1C], -1
mov dword ptr [rdx+0x10], -1
;; size=24 bbWeight=4 PerfScore 17.00
G_M9968_IG43:
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je SHORT G_M9968_IG45
- mov rsi, rbx
+ 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_M9968_IG44
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M9968_IG45
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_M9968_IG45
;; size=75 bbWeight=4 PerfScore 66.00
G_M9968_IG44:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
nop
;; size=22 bbWeight=4 PerfScore 27.00
G_M9968_IG45:
- mov rdx, bword ptr [rbp-0x88]
- lea rbx, bword ptr [rdx+0x20]
- mov r15, gword ptr [rbx]
- mov rdi, r15
- mov esi, dword ptr [rbx+0x14]
- cmp esi, dword ptr [rdi+0x14]
- jne SHORT G_M9968_IG47
- mov esi, dword ptr [rbx+0x10]
- cmp esi, dword ptr [rdi+0x10]
- jae SHORT G_M9968_IG48
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae SHORT G_M9968_IG46
- mov rsi, gword ptr [rdi+8*rsi+0x10]
- lea rdi, bword ptr [rbx+0x08]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- inc dword ptr [rbx+0x10]
- jmp G_M9968_IG36
- ;; size=64 bbWeight=8 PerfScore 242.00
+ mov rdx, bword ptr [rbp-0xA8]
+ lea rdi, bword ptr [rdx+0x20]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M9968_IG36
+ ;; size=41 bbWeight=8 PerfScore 50.00
G_M9968_IG46:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M9968_IG47:
- 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_M9968_IG48:
- mov edi, dword ptr [r15+0x10]
- inc edi
- mov dword ptr [rbx+0x10], edi
- xor rdi, rdi
- mov gword ptr [rbx+0x08], rdi
- ;; size=15 bbWeight=8 PerfScore 36.00
-G_M9968_IG49:
- jmp SHORT G_M9968_IG52
+ jmp SHORT G_M9968_IG49
;; size=2 bbWeight=1 PerfScore 2.00
-G_M9968_IG50:
+G_M9968_IG47:
mov rdi, rsp
- call G_M9968_IG81
+ call G_M9968_IG78
;; size=8 bbWeight=1 PerfScore 1.25
-G_M9968_IG51:
- jmp G_M9968_IG57
+G_M9968_IG48:
+ jmp G_M9968_IG54
;; size=5 bbWeight=1 PerfScore 2.00
-G_M9968_IG52:
+G_M9968_IG49:
xor edi, edi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov qword ptr [rdx+0x20], rdi
mov qword ptr [rdx+0x28], rdi
mov qword ptr [rdx+0x30], rdi
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x28]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rdi, gword ptr [rbx+0x28]
inc dword ptr [rdi+0x14]
mov esi, dword ptr [rdi+0x10]
xor eax, eax
mov dword ptr [rdi+0x10], eax
test esi, esi
- jle SHORT G_M9968_IG53
+ jle SHORT G_M9968_IG50
mov rdi, gword ptr [rdi+0x08]
mov edx, esi
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
;; size=67 bbWeight=1 PerfScore 20.50
-G_M9968_IG53:
- mov rdx, bword ptr [rbp-0x88]
+G_M9968_IG50:
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- je SHORT G_M9968_IG55
+ je SHORT G_M9968_IG52
;; size=14 bbWeight=1 PerfScore 5.00
-G_M9968_IG54:
+G_M9968_IG51:
mov rdi, 0xD1FFAB1E ; System.AggregateException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rsi, gword ptr [rdx+0x08]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
call [rax]System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=53 bbWeight=0 PerfScore 0.00
-G_M9968_IG55:
- mov rdx, bword ptr [rbp-0x88]
+G_M9968_IG52:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
cmp gword ptr [rdi], 0
- jne SHORT G_M9968_IG56
+ jne SHORT G_M9968_IG53
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp SHORT G_M9968_IG57
+ jmp SHORT G_M9968_IG54
;; size=50 bbWeight=1 PerfScore 13.00
-G_M9968_IG56:
+G_M9968_IG53:
mov rdi, gword ptr [rdi]
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
;; size=20 bbWeight=1 PerfScore 6.50
-G_M9968_IG57:
+G_M9968_IG54:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M9968_IG58:
- add rsp, 176
+G_M9968_IG55:
+ vzeroupper
+ add rsp, 200
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=12 bbWeight=1 PerfScore 2.75
-G_M9968_IG59:
+ ;; size=17 bbWeight=1 PerfScore 4.25
+G_M9968_IG56:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M9968_IG60:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M9968_IG61
- cmp byte ptr [rbp-0x20], 0
- je SHORT G_M9968_IG61
- mov rdi, gword ptr [rbp-0x98]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M9968_IG57:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M9968_IG58
+ cmp byte ptr [rbp-0x28], 0
+ je SHORT G_M9968_IG58
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=1 PerfScore 8.00
-G_M9968_IG61:
+G_M9968_IG58:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M9968_IG62:
- add rsp, 16
+G_M9968_IG59:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M9968_IG63:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M9968_IG60:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG64:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M9968_IG65
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M9968_IG65
- mov rdi, gword ptr [rbp-0xA0]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M9968_IG61:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M9968_IG62
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M9968_IG62
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG65:
+G_M9968_IG62:
nop
;; size=1 bbWeight=0 PerfScore 0.00
-G_M9968_IG66:
- add rsp, 16
+G_M9968_IG63:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M9968_IG67:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M9968_IG64:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG68:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M9968_IG65:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M9968_IG69
+ jne SHORT G_M9968_IG66
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M9968_IG69:
- mov rdx, bword ptr [rbp-0x88]
+G_M9968_IG66:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M9968_IG70
+ jbe SHORT G_M9968_IG67
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M9968_IG71
+ jmp SHORT G_M9968_IG68
;; size=55 bbWeight=0 PerfScore 0.00
-G_M9968_IG70:
+G_M9968_IG67:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M9968_IG71:
- lea rax, G_M9968_IG30
+G_M9968_IG68:
+ lea rax, G_M9968_IG32
;; size=7 bbWeight=0 PerfScore 0.00
-G_M9968_IG72:
- add rsp, 16
+G_M9968_IG69:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M9968_IG73:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M9968_IG70:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG74:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M9968_IG71:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M9968_IG75:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M9968_IG72:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG76:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M9968_IG73:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M9968_IG77
+ jne SHORT G_M9968_IG74
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M9968_IG77:
- mov rdx, bword ptr [rbp-0x88]
+G_M9968_IG74:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M9968_IG78
+ jbe SHORT G_M9968_IG75
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M9968_IG79
+ jmp SHORT G_M9968_IG76
;; size=55 bbWeight=0 PerfScore 0.00
-G_M9968_IG78:
+G_M9968_IG75:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M9968_IG79:
+G_M9968_IG76:
lea rax, G_M9968_IG45
;; size=7 bbWeight=0 PerfScore 0.00
-G_M9968_IG80:
- add rsp, 16
+G_M9968_IG77:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M9968_IG81:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M9968_IG78:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M9968_IG82:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M9968_IG79:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M9968_IG83:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M9968_IG80:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M9968_IG84:
- mov rdx, bword ptr [rbp-0x88]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M9968_IG81:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
- lea rax, G_M9968_IG57
+ lea rax, G_M9968_IG54
;; size=43 bbWeight=0 PerfScore 0.00
-G_M9968_IG85:
- add rsp, 16
+G_M9968_IG82:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
+ ;; size=14 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2304, prolog size 77, PerfScore 1635.83, instruction count 574, allocated bytes for code 2304 (MethodHash=682bd90f) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[int,System.Nullable`1[int]]:MoveNext():this (FullOpts)
+; Total bytes of code 2192, prolog size 83, PerfScore 1199.67, instruction count 549, allocated bytes for code 2192 (MethodHash=682bd90f) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[int,System.Nullable`1[int]]:MoveNext():this (FullOpts)
-112 (-4.86 % of base) - System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+d__23[long,System.Nullable`1[int]]:MoveNext():this
; Assembly listing for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[long,System.Nullable`1[int]]: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; 37 single block inlinees; 19 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T08] ( 33, 42 ) byref -> [rbp-0x88] this EH-live single-def
-; V01 loc0 [V01,T16] ( 10, 18 ) int -> [rbp-0x14] do-not-enreg[Z] EH-live
-; V02 loc1 [V02,T10] ( 15, 26 ) ref -> [rbp-0x90] class-hnd exact EH-live spill-single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[long,System.Nullable`1[int]]>
-; V03 loc2 [V03,T54] ( 4, 3 ) ref -> [rbp-0x98] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x20] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V05 loc4 [V05,T15] ( 2, 12 ) struct (32) [rbp-0x40] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V06 loc5 [V06,T44] ( 2, 8 ) struct (16) [rbp-0x50] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V00 this [V00,T02] ( 33, 42 ) byref -> [rbp-0xA8] this EH-live single-def
+; V01 loc0 [V01,T04] ( 10, 18 ) int -> [rbp-0x1C] do-not-enreg[Z] EH-live
+; V02 loc1 [V02,T03] ( 15, 26 ) ref -> [rbp-0xB0] class-hnd exact EH-live single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[long,System.Nullable`1[int]]>
+; V03 loc2 [V03,T38] ( 4, 3 ) ref -> [rbp-0xB8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x28] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V05 loc4 [V05 ] ( 7, 20 ) struct (32) [rbp-0x48] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V06 loc5 [V06,T28] ( 2, 8 ) struct (16) [rbp-0x58] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V07 loc6 [V07 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op <System.Nullable`1[System.TimeSpan]>
-; V09 loc8 [V09,T35] ( 4, 12 ) ref -> [rbp-0xA0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V11 loc10 [V11,T17] ( 4, 16 ) ref -> registers class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
+; V09 loc8 [V09,T19] ( 4, 12 ) ref -> [rbp-0xC0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V11 loc10 [V11,T05] ( 4, 16 ) ref -> rax class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
;* V12 loc11 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V13 loc12 [V13,T42] ( 2, 8 ) ref -> [rbp-0xA8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
-; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x68] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V15 loc14 [V15,T39] ( 3, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
+; V13 loc12 [V13,T26] ( 2, 8 ) ref -> [rbp-0xC8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
+; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x70] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+; V15 loc14 [V15,T23] ( 3, 12 ) struct (16) [rbp-0x80] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V16 loc15 [V16 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V17 loc16 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
;* V18 loc17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Exception>
; V19 OutArgs [V19 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V20 tmp1 [V20 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V21 tmp2 [V21,T68] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
-; V22 tmp3 [V22,T69] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V23 tmp4 [V23,T70] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V21 tmp2 [V21,T52] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
+; V22 tmp3 [V22,T53] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V23 tmp4 [V23,T54] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V24 tmp5 [V24 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
-; V25 tmp6 [V25,T71] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V26 tmp7 [V26,T72] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V25 tmp6 [V25,T55] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V26 tmp7 [V26,T56] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V27 tmp8 [V27 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V28 tmp9 [V28 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
;* V29 tmp10 [V29 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V30 tmp11 [V30 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V31 tmp12 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V32 tmp13 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Nullable`1[int]>
-; V33 tmp14 [V33,T02] ( 7, 56 ) ref -> r15 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V33 tmp14 [V33,T01] ( 7, 56 ) ref -> r14 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
;* V34 tmp15 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
-; V35 tmp16 [V35,T75] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V36 tmp17 [V36,T33] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V37 tmp18 [V37,T56] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
-; V38 tmp19 [V38,T47] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-;* V39 tmp20 [V39 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V35 tmp16 [V35,T59] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V36 tmp17 [V36,T17] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V37 tmp18 [V37,T40] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
+; V38 tmp19 [V38,T30] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V39 tmp20 [V39,T34] ( 2, 4 ) struct (32) [rbp-0xA0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
;* V40 tmp21 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V41 tmp22 [V41,T18] ( 4, 16 ) ref -> registers class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V41 tmp22 [V41,T06] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V42 tmp23 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V43 tmp24 [V43,T19] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V43 tmp24 [V43,T07] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V44 tmp25 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V45 tmp26 [V45,T20] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V45 tmp26 [V45,T08] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V46 tmp27 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V47 tmp28 [V47,T36] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
-; V48 tmp29 [V48,T24] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
-; V49 tmp30 [V49,T37] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V47 tmp28 [V47,T20] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
+; V48 tmp29 [V48,T12] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
+; V49 tmp30 [V49,T21] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V50 tmp31 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V51 tmp32 [V51,T64] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V52 tmp33 [V52,T73] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V53 tmp34 [V53,T66] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V54 tmp35 [V54,T28] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V55 tmp36 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V56 tmp37 [V56,T48] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-;* V57 tmp38 [V57 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
-;* V58 tmp39 [V58 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V60 tmp41 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V61 tmp42 [V61 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-; V62 tmp43 [V62,T27] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
-; V63 tmp44 [V63,T29] ( 2, 16 ) short -> rdi "Inlining Arg"
-;* V64 tmp45 [V64 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V65 tmp46 [V65,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V66 tmp47 [V66,T21] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V67 tmp48 [V67,T38] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V68 tmp49 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V69 tmp50 [V69 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V70 tmp51 [V70 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V71 tmp52 [V71 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V72 tmp53 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V73 tmp54 [V73,T22] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V74 tmp55 [V74,T23] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V75 tmp56 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V76 tmp57 [V76,T65] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V77 tmp58 [V77,T74] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V78 tmp59 [V78,T67] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V79 tmp60 [V79,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V80 tmp61 [V80,T00] ( 9,144 ) byref -> rbx "Inlining Arg"
-; V81 tmp62 [V81,T09] ( 4, 32 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V82 tmp63 [V82,T34] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V83 tmp64 [V83,T57] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
-; V84 tmp65 [V84,T41] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
-;* V85 tmp66 [V85,T61] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
-; V86 tmp67 [V86,T49] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
-;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
-; V88 tmp69 [V88,T25] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
-; V89 tmp70 [V89,T26] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
-;* V90 tmp71 [V90 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
-;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
-;* V92 tmp73 [V92 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
-;* V93 tmp74 [V93 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
-;* V94 tmp75 [V94 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
-; V95 tmp76 [V95,T40] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
-;* V96 tmp77 [V96 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
-;* V97 tmp78 [V97 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
-;* V98 tmp79 [V98 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
-;* V99 tmp80 [V99,T52] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
-; V100 tmp81 [V100,T55] ( 3, 3 ) ref -> rsi single-def "field V57._list (fldOffset=0x0)" P-INDEP
-;* V101 tmp82 [V101,T60] ( 0, 0 ) ref -> zero-ref single-def "field V57._current (fldOffset=0x8)" P-INDEP
-;* V102 tmp83 [V102,T62] ( 0, 0 ) int -> zero-ref single-def "field V57._index (fldOffset=0x10)" P-INDEP
-; V103 tmp84 [V103,T58] ( 2, 2 ) int -> rbx single-def "field V57._version (fldOffset=0x14)" P-INDEP
-; V104 tmp85 [V104,T43] ( 2, 8 ) ref -> rsi "field V59._obj (fldOffset=0x0)" P-INDEP
-; V105 tmp86 [V105,T45] ( 2, 8 ) short -> rdi "field V59._token (fldOffset=0x8)" P-INDEP
-;* V106 tmp87 [V106,T53] ( 0, 0 ) ubyte -> zero-ref "field V59._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V107 tmp88 [V107 ] ( 0, 0 ) ref -> zero-ref "field V60._obj (fldOffset=0x0)" P-INDEP
-;* V108 tmp89 [V108 ] ( 0, 0 ) short -> zero-ref "field V60._token (fldOffset=0x8)" P-INDEP
-;* V109 tmp90 [V109 ] ( 0, 0 ) ubyte -> zero-ref "field V60._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V110 tmp91 [V110,T11] ( 4, 24 ) ref -> [rbp-0xB0] EH-live spill-single-def "V05.[000..008)"
-; V111 tmp92 [V111,T03] ( 6, 41 ) int -> [rbp-0x7C] do-not-enreg[Z] EH-live "V05.[008..012)"
-; V112 tmp93 [V112,T46] ( 2, 8 ) int -> [rbp-0x80] EH-live spill-single-def "V05.[012..016)"
-; V113 tmp94 [V113,T01] ( 14, 60 ) ref -> rbx "V05.[016..024)"
-;* V114 tmp95 [V114 ] ( 0, 0 ) ref -> zero-ref "V06.[000..008)"
-;* V115 tmp96 [V115 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
-;* V116 tmp97 [V116 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
-; V117 tmp98 [V117,T59] ( 2, 2 ) int -> rax single-def "V39.[012..016)"
-;* V118 tmp99 [V118 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[016..024)"
-; V119 tmp100 [V119,T04] ( 3, 48 ) byref -> rax "Spilling address for field-by-field copy"
-; V120 tmp101 [V120,T05] ( 3, 48 ) ref -> rax "arr expr"
-; V121 tmp102 [V121,T06] ( 3, 48 ) ref -> rdi "arr expr"
-; V122 tmp103 [V122,T07] ( 3, 48 ) int -> rsi "index expr"
-; V123 tmp104 [V123,T50] ( 2, 4 ) ref -> rsi "argument with side effect"
-; V124 PSPSym [V124,T63] ( 1, 1 ) long -> [rbp-0xB8] do-not-enreg[V] "PSPSym"
-; V125 cse0 [V125,T31] ( 2, 16 ) int -> rax "CSE #02: moderate"
-; V126 cse1 [V126,T13] ( 2, 16 ) int -> rax "CSE #03: moderate"
-; V127 cse2 [V127,T14] ( 3, 24 ) int -> rsi "CSE #05: moderate"
-; V128 cse3 [V128,T32] ( 2, 16 ) int -> rsi "CSE #06: moderate"
-; V129 cse4 [V129,T12] ( 3, 24 ) ref -> r15 "CSE #07: moderate"
+; V51 tmp32 [V51,T48] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V52 tmp33 [V52,T57] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V53 tmp34 [V53,T50] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V54 tmp35 [V54,T31] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+;* V55 tmp36 [V55 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
+;* V56 tmp37 [V56 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V57 tmp38 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V58 tmp39 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+; V60 tmp41 [V60,T15] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
+; V61 tmp42 [V61,T16] ( 2, 16 ) short -> rdi "Inlining Arg"
+;* V62 tmp43 [V62 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V63 tmp44 [V63,T35] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V64 tmp45 [V64,T09] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V65 tmp46 [V65,T22] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V66 tmp47 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V67 tmp48 [V67 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V68 tmp49 [V68 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V69 tmp50 [V69 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V70 tmp51 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V71 tmp52 [V71,T10] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V72 tmp53 [V72,T11] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V73 tmp54 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V74 tmp55 [V74,T49] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V75 tmp56 [V75,T58] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V76 tmp57 [V76,T51] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V77 tmp58 [V77,T18] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V78 tmp59 [V78,T41] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
+; V79 tmp60 [V79,T25] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
+;* V80 tmp61 [V80,T45] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
+; V81 tmp62 [V81,T32] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
+;* V82 tmp63 [V82 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
+; V83 tmp64 [V83,T13] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
+; V84 tmp65 [V84,T14] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
+;* V85 tmp66 [V85 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
+;* V86 tmp67 [V86 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
+;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
+;* V88 tmp69 [V88 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
+;* V89 tmp70 [V89 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
+; V90 tmp71 [V90,T24] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
+;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
+;* V92 tmp73 [V92 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
+;* V93 tmp74 [V93 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
+;* V94 tmp75 [V94,T36] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
+; V95 tmp76 [V95,T39] ( 3, 3 ) ref -> rsi single-def "field V55._list (fldOffset=0x0)" P-INDEP
+;* V96 tmp77 [V96,T44] ( 0, 0 ) ref -> zero-ref single-def "field V55._current (fldOffset=0x8)" P-INDEP
+;* V97 tmp78 [V97,T46] ( 0, 0 ) int -> zero-ref single-def "field V55._index (fldOffset=0x10)" P-INDEP
+; V98 tmp79 [V98,T42] ( 2, 2 ) int -> r15 single-def "field V55._version (fldOffset=0x14)" P-INDEP
+; V99 tmp80 [V99,T27] ( 2, 8 ) ref -> rsi "field V57._obj (fldOffset=0x0)" P-INDEP
+; V100 tmp81 [V100,T29] ( 2, 8 ) short -> rdi "field V57._token (fldOffset=0x8)" P-INDEP
+;* V101 tmp82 [V101,T37] ( 0, 0 ) ubyte -> zero-ref "field V57._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V102 tmp83 [V102 ] ( 0, 0 ) ref -> zero-ref "field V58._obj (fldOffset=0x0)" P-INDEP
+;* V103 tmp84 [V103 ] ( 0, 0 ) short -> zero-ref "field V58._token (fldOffset=0x8)" P-INDEP
+;* V104 tmp85 [V104 ] ( 0, 0 ) ubyte -> zero-ref "field V58._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V105 tmp86 [V105,T00] ( 14, 56 ) ref -> registers "V06.[000..008)"
+;* V106 tmp87 [V106 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
+;* V107 tmp88 [V107 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
+; V108 tmp89 [V108,T43] ( 2, 2 ) int -> rsi single-def "V39.[012..016)"
+; V109 tmp90 [V109,T33] ( 2, 4 ) ref -> rsi "argument with side effect"
+; V110 PSPSym [V110,T47] ( 1, 1 ) long -> [rbp-0xD8] do-not-enreg[V] "PSPSym"
;
-; Lcl frame size = 176
+; Lcl frame size = 200
G_M6921_IG01:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 176
- lea rbp, [rsp+0xC0]
+ sub rsp, 200
+ lea rbp, [rsp+0xE0]
xor eax, eax
- mov qword ptr [rbp-0xA8], rax
+ mov qword ptr [rbp-0xC8], rax
vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0xC0], ymm8
vmovdqu ymmword ptr [rbp-0xA0], ymm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
vmovdqu ymmword ptr [rbp-0x40], ymm8
- mov qword ptr [rbp-0x20], rax
- mov qword ptr [rbp-0xB8], rsp
- mov bword ptr [rbp-0x88], rdi
+ mov qword ptr [rbp-0xD8], rsp
+ mov bword ptr [rbp-0xA8], rdi
mov rdx, rdi
- ;; size=77 bbWeight=1 PerfScore 16.58
+ ;; size=83 bbWeight=1 PerfScore 18.58
G_M6921_IG02:
mov esi, dword ptr [rdx+0x10]
- mov dword ptr [rbp-0x14], esi
- mov r8, gword ptr [rdx]
- mov gword ptr [rbp-0x90], r8
+ mov dword ptr [rbp-0x1C], esi
+ mov rbx, gword ptr [rdx]
+ mov gword ptr [rbp-0xB0], rbx
;; size=16 bbWeight=1 PerfScore 6.00
G_M6921_IG03:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M6921_IG35
- mov rdi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0x98], rdi
+ mov rdi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xB8], rdi
xor esi, esi
- mov dword ptr [rbp-0x20], esi
+ mov dword ptr [rbp-0x28], esi
;; size=26 bbWeight=1 PerfScore 7.25
G_M6921_IG04:
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M6921_IG06
;; size=6 bbWeight=1 PerfScore 3.00
G_M6921_IG05:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M6921_IG06:
- lea rsi, [rbp-0x20]
+ lea rsi, [rbp-0x28]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- mov r8, gword ptr [rbp-0x90]
- cmp byte ptr [r8+0x40], 0
- jne G_M6921_IG09
- cmp byte ptr [r8+0x41], 0
+ cmp byte ptr [rbx+0x40], 0
+ jne SHORT G_M6921_IG09
+ cmp byte ptr [rbx+0x41], 0
je SHORT G_M6921_IG08
- mov rdi, gword ptr [r8+0x20]
+ mov rdi, gword ptr [rbx+0x20]
inc dword ptr [rdi+0x14]
mov edx, dword ptr [rdi+0x10]
xor esi, esi
mov dword ptr [rdi+0x10], esi
test edx, edx
jle SHORT G_M6921_IG07
mov rdi, gword ptr [rdi+0x08]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
- ;; size=71 bbWeight=1 PerfScore 25.50
+ ;; size=58 bbWeight=1 PerfScore 24.50
G_M6921_IG07:
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x20]
- mov rsi, gword ptr [r8+0x10]
+ mov rdi, gword ptr [rbx+0x20]
+ mov rsi, gword ptr [rbx+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 0
- mov r8, gword ptr [rbp-0x90]
- ;; size=48 bbWeight=1 PerfScore 14.25
+ mov byte ptr [rbx+0x41], 0
+ ;; size=26 bbWeight=1 PerfScore 11.25
G_M6921_IG08:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
jge SHORT G_M6921_IG11
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M6921_IG11
- mov rdi, gword ptr [rbp-0x98]
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
- mov r8, gword ptr [rbp-0x90]
jmp SHORT G_M6921_IG11
- ;; size=33 bbWeight=1 PerfScore 11.00
+ ;; size=26 bbWeight=1 PerfScore 10.00
G_M6921_IG09:
mov rdi, rsp
- call G_M6921_IG59
+ call G_M6921_IG56
;; size=8 bbWeight=1 PerfScore 1.25
G_M6921_IG10:
- jmp G_M6921_IG55
+ jmp G_M6921_IG52
;; size=5 bbWeight=1 PerfScore 2.00
G_M6921_IG11:
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x08], rdi
- mov rdi, gword ptr [r8+0x20]
- mov eax, dword ptr [rdi+0x14]
- mov gword ptr [rbp-0xB0], rdi
- xor ecx, ecx
- mov dword ptr [rbp-0x7C], ecx
- mov dword ptr [rbp-0x80], eax
- ;; size=35 bbWeight=1 PerfScore 9.50
+ mov rdi, gword ptr [rbx+0x20]
+ mov esi, dword ptr [rdi+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0x90], xmm0
+ ;; size=32 bbWeight=1 PerfScore 7.58
G_M6921_IG12:
- jmp G_M6921_IG30
- ;; size=5 bbWeight=1 PerfScore 2.00
+ vmovdqu ymm0, ymmword ptr [rbp-0xA0]
+ vmovdqu ymmword ptr [rbp-0x48], ymm0
+ ;; size=13 bbWeight=1 PerfScore 5.00
G_M6921_IG13:
- mov rax, qword ptr [rbp-0x28]
- mov qword ptr [rbp-0x48], rax
- cmp gword ptr [rbx+0x08], 0
- jne G_M6921_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6921_IG14
- mov rdi, rbx
- mov rcx, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- call [rcx]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M6921_IG15
- ;; size=53 bbWeight=4 PerfScore 70.00
+ mov gword ptr [rbp-0x48], rdi
+ xor edi, edi
+ mov dword ptr [rbp-0x40], edi
+ mov dword ptr [rbp-0x3C], esi
+ ;; size=12 bbWeight=1 PerfScore 3.25
G_M6921_IG14:
- mov rcx, gword ptr [rbx+0x18]
- mov rax, rcx
- ;; size=7 bbWeight=4 PerfScore 9.00
+ jmp G_M6921_IG32
+ ;; size=5 bbWeight=1 PerfScore 2.00
G_M6921_IG15:
+ mov rbx, gword ptr [rbp-0x38]
+ mov rdi, qword ptr [rbp-0x30]
+ mov qword ptr [rbp-0x50], rdi
+ cmp gword ptr [rbx+0x08], 0
+ jne G_M6921_IG32
+ mov r15, rbx
+ mov rbx, gword ptr [rbp-0xB0]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6921_IG16
+ mov rdi, r15
+ mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ jmp SHORT G_M6921_IG17
+ ;; size=57 bbWeight=4 PerfScore 71.00
+G_M6921_IG16:
+ mov rax, gword ptr [r15+0x18]
+ ;; size=4 bbWeight=4 PerfScore 8.00
+G_M6921_IG17:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- je G_M6921_IG26
+ je G_M6921_IG28
cmp rdx, 0xD1FFAB1E
- jle G_M6921_IG26
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xA0], rsi
+ jle G_M6921_IG28
+ mov rsi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xC0], rsi
xor esi, esi
- mov dword ptr [rbp-0x58], esi
- ;; size=57 bbWeight=4 PerfScore 60.00
-G_M6921_IG16:
- cmp byte ptr [rbp-0x58], 0
- jne G_M6921_IG20
- lea rsi, [rbp-0x58]
- mov rdi, gword ptr [rbp-0xA0]
+ mov dword ptr [rbp-0x60], esi
+ ;; size=50 bbWeight=4 PerfScore 56.00
+G_M6921_IG18:
+ cmp byte ptr [rbp-0x60], 0
+ jne G_M6921_IG22
+ lea rsi, [rbp-0x60]
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- cmp gword ptr [rbx+0x08], 0
- je G_M6921_IG21
- mov rdi, rbx
+ cmp gword ptr [r15+0x08], 0
+ je G_M6921_IG23
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
;; size=52 bbWeight=4 PerfScore 52.00
-G_M6921_IG17:
+G_M6921_IG19:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- jne G_M6921_IG22
+ jne G_M6921_IG24
xor edx, edx
;; size=23 bbWeight=4 PerfScore 35.00
-G_M6921_IG18:
+G_M6921_IG20:
cmp rdx, 0xD1FFAB1E
- jle G_M6921_IG25
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 1
- mov rdi, gword ptr [r8+0x10]
- mov rsi, qword ptr [rbp-0x48]
+ jle G_M6921_IG27
+ mov byte ptr [rbx+0x41], 1
+ mov rdi, gword ptr [rbx+0x10]
+ mov rsi, qword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
- mov r8, gword ptr [rbp-0x90]
- mov r15, gword ptr [r8+0x28]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6921_IG23
- mov rdi, rbx
+ mov r14, gword ptr [rbx+0x28]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6921_IG25
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- ;; size=80 bbWeight=4 PerfScore 92.00
-G_M6921_IG19:
- inc dword ptr [r15+0x14]
- mov rdi, gword ptr [r15+0x08]
- mov esi, dword ptr [r15+0x10]
+ ;; size=65 bbWeight=4 PerfScore 84.00
+G_M6921_IG21:
+ inc dword ptr [r14+0x14]
+ mov rdi, gword ptr [r14+0x08]
+ mov esi, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M6921_IG24
+ jbe SHORT G_M6921_IG26
lea edx, [rsi+0x01]
- mov dword ptr [r15+0x10], edx
+ mov dword ptr [r14+0x10], edx
movsxd rsi, esi
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6921_IG25
+ jmp SHORT G_M6921_IG27
;; size=44 bbWeight=4 PerfScore 73.00
-G_M6921_IG20:
+G_M6921_IG22:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M6921_IG21:
- mov rax, gword ptr [rbx+0x18]
- jmp G_M6921_IG17
+G_M6921_IG23:
+ mov rax, gword ptr [r15+0x18]
+ jmp G_M6921_IG19
;; size=9 bbWeight=4 PerfScore 16.00
-G_M6921_IG22:
- jmp G_M6921_IG18
+G_M6921_IG24:
+ jmp G_M6921_IG20
;; size=5 bbWeight=4 PerfScore 8.00
-G_M6921_IG23:
- mov rax, gword ptr [rbx+0x18]
- jmp SHORT G_M6921_IG19
+G_M6921_IG25:
+ mov rax, gword ptr [r15+0x18]
+ jmp SHORT G_M6921_IG21
;; size=6 bbWeight=4 PerfScore 16.00
-G_M6921_IG24:
- mov rdi, r15
+G_M6921_IG26:
+ mov rdi, r14
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
nop
;; size=19 bbWeight=4 PerfScore 16.00
-G_M6921_IG25:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6921_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M6921_IG30
- mov rdi, gword ptr [rbp-0xA0]
+G_M6921_IG27:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6921_IG32
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M6921_IG32
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
- jmp SHORT G_M6921_IG30
- ;; size=36 bbWeight=4 PerfScore 48.00
-G_M6921_IG26:
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M6921_IG27
- mov rdi, rbx
+ jmp SHORT G_M6921_IG32
+ ;; size=26 bbWeight=4 PerfScore 40.00
+G_M6921_IG28:
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M6921_IG29
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M6921_IG28
+ jmp SHORT G_M6921_IG30
;; size=24 bbWeight=4 PerfScore 38.00
-G_M6921_IG27:
- mov rax, gword ptr [rbx+0x18]
+G_M6921_IG29:
+ mov rax, gword ptr [r15+0x18]
;; size=4 bbWeight=4 PerfScore 8.00
-G_M6921_IG28:
+G_M6921_IG30:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Threading.RateLimiting.ReplenishingRateLimiter
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M6921_IG30
+ je SHORT G_M6921_IG32
;; size=30 bbWeight=4 PerfScore 20.00
-G_M6921_IG29:
- mov rcx, rax
- mov rdi, rcx
- mov rcx, qword ptr [rcx]
- mov rcx, qword ptr [rcx+0x48]
- call [rcx+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
- nop
- ;; size=17 bbWeight=4 PerfScore 31.00
-G_M6921_IG30:
- mov rdi, gword ptr [rbp-0xB0]
- mov eax, dword ptr [rdi+0x14]
- cmp dword ptr [rbp-0x80], eax
- jne SHORT G_M6921_IG32
- mov eax, dword ptr [rdi+0x10]
- cmp dword ptr [rbp-0x7C], eax
- jae SHORT G_M6921_IG33
- mov rax, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rax+0x08]
- cmp dword ptr [rbp-0x7C], ecx
- jae SHORT G_M6921_IG31
- mov ecx, dword ptr [rbp-0x7C]
- shl rcx, 4
- lea rax, bword ptr [rax+rcx+0x10]
- mov rbx, gword ptr [rax]
- mov rax, qword ptr [rax+0x08]
- mov qword ptr [rbp-0x28], rax
- mov eax, dword ptr [rbp-0x7C]
- inc eax
- mov dword ptr [rbp-0x7C], eax
- jmp G_M6921_IG13
- ;; size=71 bbWeight=8 PerfScore 238.00
G_M6921_IG31:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ mov rdi, rax
+ mov rax, qword ptr [rax]
+ mov rax, qword ptr [rax+0x48]
+ call [rax+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
+ nop
+ ;; size=14 bbWeight=4 PerfScore 30.00
G_M6921_IG32:
- 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
+ lea rdi, [rbp-0x48]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M6921_IG15
+ ;; size=34 bbWeight=8 PerfScore 42.00
G_M6921_IG33:
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x28]
- mov ebx, dword ptr [rsi+0x14]
- mov rdx, bword ptr [rbp-0x88]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rsi, gword ptr [rbx+0x28]
+ mov r15d, dword ptr [rsi+0x14]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x28], rdi
- ;; size=43 bbWeight=1 PerfScore 9.75
+ ;; size=44 bbWeight=1 PerfScore 9.75
G_M6921_IG34:
mov dword ptr [rdx+0x30], edi
- mov dword ptr [rdx+0x34], ebx
- mov r8, gword ptr [rbp-0x90]
- ;; size=13 bbWeight=1 PerfScore 3.00
+ mov dword ptr [rdx+0x34], r15d
+ ;; size=7 bbWeight=1 PerfScore 2.00
G_M6921_IG35:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je SHORT G_M6921_IG37
jmp G_M6921_IG45
;; size=11 bbWeight=1 PerfScore 5.00
G_M6921_IG36:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x28]
- mov gword ptr [rbp-0xA8], rdi
- mov r8, gword ptr [rbp-0x90]
+ mov gword ptr [rbp-0xC8], rdi
+ mov rbx, gword ptr [rbp-0xB0]
;; size=25 bbWeight=4 PerfScore 20.00
G_M6921_IG37:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M6921_IG41
- mov rdi, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x78], rax
- mov qword ptr [rbp-0x70], rdx
- mov rsi, gword ptr [rbp-0x78]
- movsx rdi, word ptr [rbp-0x70]
- mov gword ptr [rbp-0x68], rsi
- mov word ptr [rbp-0x60], di
- mov byte ptr [rbp-0x5E], 0
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov gword ptr [rbp-0x80], rax
+ mov qword ptr [rbp-0x78], rdx
+ mov rsi, gword ptr [rbp-0x80]
+ movsx rdi, word ptr [rbp-0x78]
+ mov gword ptr [rbp-0x70], rsi
+ mov word ptr [rbp-0x68], di
+ mov byte ptr [rbp-0x66], 0
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je G_M6921_IG43
- mov rsi, rbx
+ 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_M6921_IG38
test dword ptr [rax+0x34], 0xD1FFAB1E
jne G_M6921_IG43
jmp SHORT G_M6921_IG39
;; size=118 bbWeight=4 PerfScore 130.00
G_M6921_IG38:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
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_M6921_IG43
;; size=25 bbWeight=4 PerfScore 31.00
G_M6921_IG39:
xor edi, edi
- mov dword ptr [rbp-0x14], edi
+ mov dword ptr [rbp-0x1C], edi
;; size=5 bbWeight=1 PerfScore 1.25
G_M6921_IG40:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], edi
lea rdi, bword ptr [rdx+0x38]
- lea rsi, bword ptr [rbp-0x68]
+ lea rsi, bword ptr [rbp-0x70]
call CORINFO_HELP_ASSIGN_BYREF
movsq
lea rsi, bword ptr [rdx+0x18]
mov rdi, rdx
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[long,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[long,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rsi, rax
- lea rdi, [rbp-0x68]
+ lea rdi, [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M6921_IG50
+ jmp G_M6921_IG47
;; size=68 bbWeight=1 PerfScore 15.00
G_M6921_IG41:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
vmovdqu xmm0, xmmword ptr [rdx+0x38]
- vmovdqu xmmword ptr [rbp-0x68], xmm0
+ vmovdqu xmmword ptr [rbp-0x70], xmm0
;; size=17 bbWeight=4 PerfScore 24.00
G_M6921_IG42:
xor esi, esi
mov qword ptr [rdx+0x38], rsi
mov qword ptr [rdx+0x40], rsi
- mov dword ptr [rbp-0x14], -1
+ mov dword ptr [rbp-0x1C], -1
mov dword ptr [rdx+0x10], -1
;; size=24 bbWeight=4 PerfScore 17.00
G_M6921_IG43:
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je SHORT G_M6921_IG45
- mov rsi, rbx
+ 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_M6921_IG44
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M6921_IG45
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_M6921_IG45
;; size=75 bbWeight=4 PerfScore 66.00
G_M6921_IG44:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
nop
;; size=22 bbWeight=4 PerfScore 27.00
G_M6921_IG45:
- mov rdx, bword ptr [rbp-0x88]
- lea rbx, bword ptr [rdx+0x20]
- mov r15, gword ptr [rbx]
- mov rdi, r15
- mov esi, dword ptr [rbx+0x14]
- cmp esi, dword ptr [rdi+0x14]
- jne SHORT G_M6921_IG47
- mov esi, dword ptr [rbx+0x10]
- cmp esi, dword ptr [rdi+0x10]
- jae SHORT G_M6921_IG48
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae SHORT G_M6921_IG46
- mov rsi, gword ptr [rdi+8*rsi+0x10]
- lea rdi, bword ptr [rbx+0x08]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- inc dword ptr [rbx+0x10]
- jmp G_M6921_IG36
- ;; size=64 bbWeight=8 PerfScore 242.00
+ mov rdx, bword ptr [rbp-0xA8]
+ lea rdi, bword ptr [rdx+0x20]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M6921_IG36
+ ;; size=41 bbWeight=8 PerfScore 50.00
G_M6921_IG46:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M6921_IG47:
- 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_M6921_IG48:
- mov edi, dword ptr [r15+0x10]
- inc edi
- mov dword ptr [rbx+0x10], edi
- xor rdi, rdi
- mov gword ptr [rbx+0x08], rdi
- ;; size=15 bbWeight=8 PerfScore 36.00
-G_M6921_IG49:
- jmp SHORT G_M6921_IG52
+ jmp SHORT G_M6921_IG49
;; size=2 bbWeight=1 PerfScore 2.00
-G_M6921_IG50:
+G_M6921_IG47:
mov rdi, rsp
- call G_M6921_IG81
+ call G_M6921_IG78
;; size=8 bbWeight=1 PerfScore 1.25
-G_M6921_IG51:
- jmp G_M6921_IG57
+G_M6921_IG48:
+ jmp G_M6921_IG54
;; size=5 bbWeight=1 PerfScore 2.00
-G_M6921_IG52:
+G_M6921_IG49:
xor edi, edi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov qword ptr [rdx+0x20], rdi
mov qword ptr [rdx+0x28], rdi
mov qword ptr [rdx+0x30], rdi
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x28]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rdi, gword ptr [rbx+0x28]
inc dword ptr [rdi+0x14]
mov esi, dword ptr [rdi+0x10]
xor eax, eax
mov dword ptr [rdi+0x10], eax
test esi, esi
- jle SHORT G_M6921_IG53
+ jle SHORT G_M6921_IG50
mov rdi, gword ptr [rdi+0x08]
mov edx, esi
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
;; size=67 bbWeight=1 PerfScore 20.50
-G_M6921_IG53:
- mov rdx, bword ptr [rbp-0x88]
+G_M6921_IG50:
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- je SHORT G_M6921_IG55
+ je SHORT G_M6921_IG52
;; size=14 bbWeight=1 PerfScore 5.00
-G_M6921_IG54:
+G_M6921_IG51:
mov rdi, 0xD1FFAB1E ; System.AggregateException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rsi, gword ptr [rdx+0x08]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
call [rax]System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=53 bbWeight=0 PerfScore 0.00
-G_M6921_IG55:
- mov rdx, bword ptr [rbp-0x88]
+G_M6921_IG52:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
cmp gword ptr [rdi], 0
- jne SHORT G_M6921_IG56
+ jne SHORT G_M6921_IG53
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp SHORT G_M6921_IG57
+ jmp SHORT G_M6921_IG54
;; size=50 bbWeight=1 PerfScore 13.00
-G_M6921_IG56:
+G_M6921_IG53:
mov rdi, gword ptr [rdi]
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
;; size=20 bbWeight=1 PerfScore 6.50
-G_M6921_IG57:
+G_M6921_IG54:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M6921_IG58:
- add rsp, 176
+G_M6921_IG55:
+ vzeroupper
+ add rsp, 200
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=12 bbWeight=1 PerfScore 2.75
-G_M6921_IG59:
+ ;; size=17 bbWeight=1 PerfScore 4.25
+G_M6921_IG56:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M6921_IG60:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6921_IG61
- cmp byte ptr [rbp-0x20], 0
- je SHORT G_M6921_IG61
- mov rdi, gword ptr [rbp-0x98]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M6921_IG57:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6921_IG58
+ cmp byte ptr [rbp-0x28], 0
+ je SHORT G_M6921_IG58
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=1 PerfScore 8.00
-G_M6921_IG61:
+G_M6921_IG58:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M6921_IG62:
- add rsp, 16
+G_M6921_IG59:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M6921_IG63:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M6921_IG60:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG64:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M6921_IG65
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M6921_IG65
- mov rdi, gword ptr [rbp-0xA0]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6921_IG61:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M6921_IG62
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M6921_IG62
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG65:
+G_M6921_IG62:
nop
;; size=1 bbWeight=0 PerfScore 0.00
-G_M6921_IG66:
- add rsp, 16
+G_M6921_IG63:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6921_IG67:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6921_IG64:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG68:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6921_IG65:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M6921_IG69
+ jne SHORT G_M6921_IG66
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M6921_IG69:
- mov rdx, bword ptr [rbp-0x88]
+G_M6921_IG66:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M6921_IG70
+ jbe SHORT G_M6921_IG67
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6921_IG71
+ jmp SHORT G_M6921_IG68
;; size=55 bbWeight=0 PerfScore 0.00
-G_M6921_IG70:
+G_M6921_IG67:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M6921_IG71:
- lea rax, G_M6921_IG30
+G_M6921_IG68:
+ lea rax, G_M6921_IG32
;; size=7 bbWeight=0 PerfScore 0.00
-G_M6921_IG72:
- add rsp, 16
+G_M6921_IG69:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6921_IG73:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6921_IG70:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG74:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6921_IG71:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6921_IG75:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6921_IG72:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG76:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6921_IG73:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M6921_IG77
+ jne SHORT G_M6921_IG74
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M6921_IG77:
- mov rdx, bword ptr [rbp-0x88]
+G_M6921_IG74:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M6921_IG78
+ jbe SHORT G_M6921_IG75
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M6921_IG79
+ jmp SHORT G_M6921_IG76
;; size=55 bbWeight=0 PerfScore 0.00
-G_M6921_IG78:
+G_M6921_IG75:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M6921_IG79:
+G_M6921_IG76:
lea rax, G_M6921_IG45
;; size=7 bbWeight=0 PerfScore 0.00
-G_M6921_IG80:
- add rsp, 16
+G_M6921_IG77:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M6921_IG81:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M6921_IG78:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M6921_IG82:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M6921_IG79:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M6921_IG83:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M6921_IG80:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M6921_IG84:
- mov rdx, bword ptr [rbp-0x88]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M6921_IG81:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
- lea rax, G_M6921_IG57
+ lea rax, G_M6921_IG54
;; size=43 bbWeight=0 PerfScore 0.00
-G_M6921_IG85:
- add rsp, 16
+G_M6921_IG82:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
+ ;; size=14 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2304, prolog size 77, PerfScore 1635.83, instruction count 574, allocated bytes for code 2304 (MethodHash=6adde4f6) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[long,System.Nullable`1[int]]:MoveNext():this (FullOpts)
+; Total bytes of code 2192, prolog size 83, PerfScore 1199.67, instruction count 549, allocated bytes for code 2192 (MethodHash=6adde4f6) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[long,System.Nullable`1[int]]:MoveNext():this (FullOpts)
-112 (-4.86 % of base) - System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+d__23[short,System.Nullable`1[int]]:MoveNext():this
; Assembly listing for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[short,System.Nullable`1[int]]: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; 37 single block inlinees; 19 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T08] ( 33, 42 ) byref -> [rbp-0x88] this EH-live single-def
-; V01 loc0 [V01,T16] ( 10, 18 ) int -> [rbp-0x14] do-not-enreg[Z] EH-live
-; V02 loc1 [V02,T10] ( 15, 26 ) ref -> [rbp-0x90] class-hnd exact EH-live spill-single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[short,System.Nullable`1[int]]>
-; V03 loc2 [V03,T54] ( 4, 3 ) ref -> [rbp-0x98] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x20] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V05 loc4 [V05,T15] ( 2, 12 ) struct (32) [rbp-0x40] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V06 loc5 [V06,T44] ( 2, 8 ) struct (16) [rbp-0x50] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V00 this [V00,T02] ( 33, 42 ) byref -> [rbp-0xA8] this EH-live single-def
+; V01 loc0 [V01,T04] ( 10, 18 ) int -> [rbp-0x1C] do-not-enreg[Z] EH-live
+; V02 loc1 [V02,T03] ( 15, 26 ) ref -> [rbp-0xB0] class-hnd exact EH-live single-def <System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2[short,System.Nullable`1[int]]>
+; V03 loc2 [V03,T38] ( 4, 3 ) ref -> [rbp-0xB8] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V04 loc3 [V04 ] ( 5, 5 ) ubyte -> [rbp-0x28] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V05 loc4 [V05 ] ( 7, 20 ) struct (32) [rbp-0x48] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V06 loc5 [V06,T28] ( 2, 8 ) struct (16) [rbp-0x58] do-not-enreg[SHF] must-init ld-addr-op EH-live <System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V07 loc6 [V07 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V08 loc7 [V08 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op <System.Nullable`1[System.TimeSpan]>
-; V09 loc8 [V09,T35] ( 4, 12 ) ref -> [rbp-0xA0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
-; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op
-; V11 loc10 [V11,T17] ( 4, 16 ) ref -> registers class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
+; V09 loc8 [V09,T19] ( 4, 12 ) ref -> [rbp-0xC0] do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
+; V10 loc9 [V10 ] ( 5, 16 ) ubyte -> [rbp-0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op
+; V11 loc10 [V11,T05] ( 4, 16 ) ref -> rax class-hnd <System.Threading.RateLimiting.ReplenishingRateLimiter>
;* V12 loc11 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
-; V13 loc12 [V13,T42] ( 2, 8 ) ref -> [rbp-0xA8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
-; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x68] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-; V15 loc14 [V15,T39] ( 3, 12 ) struct (16) [rbp-0x78] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
+; V13 loc12 [V13,T26] ( 2, 8 ) ref -> [rbp-0xC8] do-not-enreg[Z] must-init class-hnd EH-live <System.Threading.RateLimiting.RateLimiter>
+; V14 loc13 [V14 ] ( 10, 34 ) struct (16) [rbp-0x70] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+; V15 loc14 [V15,T23] ( 3, 12 ) struct (16) [rbp-0x80] do-not-enreg[SFR] multireg-ret must-init ld-addr-op <System.Threading.Tasks.ValueTask>
;* V16 loc15 [V16 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
;* V17 loc16 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Exception>
;* V18 loc17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Exception>
; V19 OutArgs [V19 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V20 tmp1 [V20 ] ( 0, 0 ) int -> zero-ref "dup spill"
-; V21 tmp2 [V21,T68] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
-; V22 tmp3 [V22,T69] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V23 tmp4 [V23,T70] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V21 tmp2 [V21,T52] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
+; V22 tmp3 [V22,T53] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V23 tmp4 [V23,T54] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V24 tmp5 [V24 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
-; V25 tmp6 [V25,T71] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
-; V26 tmp7 [V26,T72] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
+; V25 tmp6 [V25,T55] ( 3, 0 ) ref -> rbx class-hnd "impSpillSpecialSideEff" <System.Exception>
+; V26 tmp7 [V26,T56] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.Collections.Generic.List`1[System.Exception]>
;* V27 tmp8 [V27 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V28 tmp9 [V28 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Nullable`1[System.TimeSpan]>
;* V29 tmp10 [V29 ] ( 0, 0 ) struct ( 8) zero-ref <System.TimeSpan>
;* V30 tmp11 [V30 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
;* V31 tmp12 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]>
;* V32 tmp13 [V32 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Nullable`1[int]>
-; V33 tmp14 [V33,T02] ( 7, 56 ) ref -> r15 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V33 tmp14 [V33,T01] ( 7, 56 ) ref -> r14 class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
;* V34 tmp15 [V34 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" <System.TimeSpan>
-; V35 tmp16 [V35,T75] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-; V36 tmp17 [V36,T33] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V37 tmp18 [V37,T56] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
-; V38 tmp19 [V38,T47] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-;* V39 tmp20 [V39 ] ( 0, 0 ) struct (32) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V35 tmp16 [V35,T59] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+; V36 tmp17 [V36,T17] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V37 tmp18 [V37,T40] ( 3, 3 ) int -> rdx single-def "Inline stloc first use temp"
+; V38 tmp19 [V38,T30] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
+; V39 tmp20 [V39,T34] ( 2, 4 ) struct (32) [rbp-0xA0] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
;* V40 tmp21 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V41 tmp22 [V41,T18] ( 4, 16 ) ref -> registers class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V41 tmp22 [V41,T06] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V42 tmp23 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V43 tmp24 [V43,T19] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V43 tmp24 [V43,T07] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V44 tmp25 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V45 tmp26 [V45,T20] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V45 tmp26 [V45,T08] ( 4, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V46 tmp27 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V47 tmp28 [V47,T36] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
-; V48 tmp29 [V48,T24] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
-; V49 tmp30 [V49,T37] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
+; V47 tmp28 [V47,T20] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Threading.RateLimiting.RateLimiter[]>
+; V48 tmp29 [V48,T12] ( 4, 16 ) int -> rsi "Inline stloc first use temp"
+; V49 tmp30 [V49,T21] ( 3, 12 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.RateLimiting.RateLimiter>
;* V50 tmp31 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V51 tmp32 [V51,T64] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V52 tmp33 [V52,T73] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V53 tmp34 [V53,T66] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V54 tmp35 [V54,T28] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V55 tmp36 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]>
-; V56 tmp37 [V56,T48] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-;* V57 tmp38 [V57 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
-;* V58 tmp39 [V58 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
-;* V60 tmp41 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
-;* V61 tmp42 [V61 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
-; V62 tmp43 [V62,T27] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
-; V63 tmp44 [V63,T29] ( 2, 16 ) short -> rdi "Inlining Arg"
-;* V64 tmp45 [V64 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
-;* V65 tmp46 [V65,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V66 tmp47 [V66,T21] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V67 tmp48 [V67,T38] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V68 tmp49 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-;* V69 tmp50 [V69 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V70 tmp51 [V70 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V71 tmp52 [V71 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V72 tmp53 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
-; V73 tmp54 [V73,T22] ( 4, 16 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Object>
-; V74 tmp55 [V74,T23] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V75 tmp56 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
-; V76 tmp57 [V76,T65] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
-; V77 tmp58 [V77,T74] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
-; V78 tmp59 [V78,T67] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
-;* V79 tmp60 [V79,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V80 tmp61 [V80,T00] ( 9,144 ) byref -> rbx "Inlining Arg"
-; V81 tmp62 [V81,T09] ( 4, 32 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V82 tmp63 [V82,T34] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
-; V83 tmp64 [V83,T57] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
-; V84 tmp65 [V84,T41] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
-;* V85 tmp66 [V85,T61] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
-; V86 tmp67 [V86,T49] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
-;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
-; V88 tmp69 [V88,T25] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
-; V89 tmp70 [V89,T26] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
-;* V90 tmp71 [V90 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
-;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
-;* V92 tmp73 [V92 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
-;* V93 tmp74 [V93 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
-;* V94 tmp75 [V94 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
-; V95 tmp76 [V95,T40] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
-;* V96 tmp77 [V96 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
-;* V97 tmp78 [V97 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
-;* V98 tmp79 [V98 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
-;* V99 tmp80 [V99,T52] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
-; V100 tmp81 [V100,T55] ( 3, 3 ) ref -> rsi single-def "field V57._list (fldOffset=0x0)" P-INDEP
-;* V101 tmp82 [V101,T60] ( 0, 0 ) ref -> zero-ref single-def "field V57._current (fldOffset=0x8)" P-INDEP
-;* V102 tmp83 [V102,T62] ( 0, 0 ) int -> zero-ref single-def "field V57._index (fldOffset=0x10)" P-INDEP
-; V103 tmp84 [V103,T58] ( 2, 2 ) int -> rbx single-def "field V57._version (fldOffset=0x14)" P-INDEP
-; V104 tmp85 [V104,T43] ( 2, 8 ) ref -> rsi "field V59._obj (fldOffset=0x0)" P-INDEP
-; V105 tmp86 [V105,T45] ( 2, 8 ) short -> rdi "field V59._token (fldOffset=0x8)" P-INDEP
-;* V106 tmp87 [V106,T53] ( 0, 0 ) ubyte -> zero-ref "field V59._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-;* V107 tmp88 [V107 ] ( 0, 0 ) ref -> zero-ref "field V60._obj (fldOffset=0x0)" P-INDEP
-;* V108 tmp89 [V108 ] ( 0, 0 ) short -> zero-ref "field V60._token (fldOffset=0x8)" P-INDEP
-;* V109 tmp90 [V109 ] ( 0, 0 ) ubyte -> zero-ref "field V60._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
-; V110 tmp91 [V110,T11] ( 4, 24 ) ref -> [rbp-0xB0] EH-live spill-single-def "V05.[000..008)"
-; V111 tmp92 [V111,T03] ( 6, 41 ) int -> [rbp-0x7C] do-not-enreg[Z] EH-live "V05.[008..012)"
-; V112 tmp93 [V112,T46] ( 2, 8 ) int -> [rbp-0x80] EH-live spill-single-def "V05.[012..016)"
-; V113 tmp94 [V113,T01] ( 14, 60 ) ref -> rbx "V05.[016..024)"
-;* V114 tmp95 [V114 ] ( 0, 0 ) ref -> zero-ref "V06.[000..008)"
-;* V115 tmp96 [V115 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
-;* V116 tmp97 [V116 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
-; V117 tmp98 [V117,T59] ( 2, 2 ) int -> rax single-def "V39.[012..016)"
-;* V118 tmp99 [V118 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[016..024)"
-; V119 tmp100 [V119,T04] ( 3, 48 ) byref -> rax "Spilling address for field-by-field copy"
-; V120 tmp101 [V120,T05] ( 3, 48 ) ref -> rax "arr expr"
-; V121 tmp102 [V121,T06] ( 3, 48 ) ref -> rdi "arr expr"
-; V122 tmp103 [V122,T07] ( 3, 48 ) int -> rsi "index expr"
-; V123 tmp104 [V123,T50] ( 2, 4 ) ref -> rsi "argument with side effect"
-; V124 PSPSym [V124,T63] ( 1, 1 ) long -> [rbp-0xB8] do-not-enreg[V] "PSPSym"
-; V125 cse0 [V125,T31] ( 2, 16 ) int -> rax "CSE #02: moderate"
-; V126 cse1 [V126,T13] ( 2, 16 ) int -> rax "CSE #03: moderate"
-; V127 cse2 [V127,T14] ( 3, 24 ) int -> rsi "CSE #05: moderate"
-; V128 cse3 [V128,T32] ( 2, 16 ) int -> rsi "CSE #06: moderate"
-; V129 cse4 [V129,T12] ( 3, 24 ) ref -> r15 "CSE #07: moderate"
+; V51 tmp32 [V51,T48] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V52 tmp33 [V52,T57] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V53 tmp34 [V53,T50] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V54 tmp35 [V54,T31] ( 2, 4 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+;* V55 tmp36 [V55 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]>
+;* V56 tmp37 [V56 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V57 tmp38 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask>
+;* V58 tmp39 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask>
+;* V59 tmp40 [V59 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable>
+; V60 tmp41 [V60,T15] ( 2, 16 ) ref -> rsi class-hnd "Inlining Arg" <System.Object>
+; V61 tmp42 [V61,T16] ( 2, 16 ) short -> rdi "Inlining Arg"
+;* V62 tmp43 [V62 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter>
+;* V63 tmp44 [V63,T35] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V64 tmp45 [V64,T09] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V65 tmp46 [V65,T22] ( 3, 12 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V66 tmp47 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+;* V67 tmp48 [V67 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V68 tmp49 [V68 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V69 tmp50 [V69 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V70 tmp51 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
+; V71 tmp52 [V71,T10] ( 4, 16 ) ref -> r15 class-hnd "Inline stloc first use temp" <System.Object>
+; V72 tmp53 [V72,T11] ( 4, 16 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V73 tmp54 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource>
+; V74 tmp55 [V74,T49] ( 7, 0 ) ref -> rdi class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Exception]>
+; V75 tmp56 [V75,T58] ( 3, 0 ) ref -> rax class-hnd "Inline stloc first use temp" <System.Exception[]>
+; V76 tmp57 [V76,T51] ( 4, 0 ) int -> rsi "Inline stloc first use temp"
+; V77 tmp58 [V77,T18] ( 6, 12 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Threading.RateLimiting.RateLimiter]>
+; V78 tmp59 [V78,T41] ( 3, 3 ) int -> rsi single-def "Inline stloc first use temp"
+; V79 tmp60 [V79,T25] ( 4, 8 ) byref -> rdi single-def "Inlining Arg"
+;* V80 tmp61 [V80,T45] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.Tasks.VoidTaskResult>
+; V81 tmp62 [V81,T32] ( 2, 4 ) ref -> rdi class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]>
+;* V82 tmp63 [V82 ] ( 0, 0 ) long -> zero-ref "field V07._ticks (fldOffset=0x0)" P-INDEP
+; V83 tmp64 [V83,T13] ( 4, 16 ) ubyte -> rax "field V08.hasValue (fldOffset=0x0)" P-INDEP
+; V84 tmp65 [V84,T14] ( 4, 16 ) long -> rdx "field V08.value (fldOffset=0x8)" P-INDEP
+;* V85 tmp66 [V85 ] ( 0, 0 ) ubyte -> zero-ref "field V24.hasValue (fldOffset=0x0)" P-DEP
+;* V86 tmp67 [V86 ] ( 0, 0 ) long -> zero-ref "field V24.value (fldOffset=0x8)" P-DEP
+;* V87 tmp68 [V87 ] ( 0, 0 ) long -> zero-ref "field V27._ticks (fldOffset=0x0)" P-INDEP
+;* V88 tmp69 [V88 ] ( 0, 0 ) ubyte -> zero-ref "field V28.hasValue (fldOffset=0x0)" P-DEP
+;* V89 tmp70 [V89 ] ( 0, 0 ) long -> zero-ref "field V28.value (fldOffset=0x8)" P-DEP
+; V90 tmp71 [V90,T24] ( 3, 12 ) long -> rdx "field V29._ticks (fldOffset=0x0)" P-INDEP
+;* V91 tmp72 [V91 ] ( 0, 0 ) long -> zero-ref "field V30._ticks (fldOffset=0x0)" P-INDEP
+;* V92 tmp73 [V92 ] ( 0, 0 ) ubyte -> zero-ref "field V32.hasValue (fldOffset=0x0)" P-INDEP
+;* V93 tmp74 [V93 ] ( 0, 0 ) int -> zero-ref "field V32.value (fldOffset=0x4)" P-INDEP
+;* V94 tmp75 [V94,T36] ( 0, 0 ) long -> zero-ref "field V34._ticks (fldOffset=0x0)" P-INDEP
+; V95 tmp76 [V95,T39] ( 3, 3 ) ref -> rsi single-def "field V55._list (fldOffset=0x0)" P-INDEP
+;* V96 tmp77 [V96,T44] ( 0, 0 ) ref -> zero-ref single-def "field V55._current (fldOffset=0x8)" P-INDEP
+;* V97 tmp78 [V97,T46] ( 0, 0 ) int -> zero-ref single-def "field V55._index (fldOffset=0x10)" P-INDEP
+; V98 tmp79 [V98,T42] ( 2, 2 ) int -> r15 single-def "field V55._version (fldOffset=0x14)" P-INDEP
+; V99 tmp80 [V99,T27] ( 2, 8 ) ref -> rsi "field V57._obj (fldOffset=0x0)" P-INDEP
+; V100 tmp81 [V100,T29] ( 2, 8 ) short -> rdi "field V57._token (fldOffset=0x8)" P-INDEP
+;* V101 tmp82 [V101,T37] ( 0, 0 ) ubyte -> zero-ref "field V57._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+;* V102 tmp83 [V102 ] ( 0, 0 ) ref -> zero-ref "field V58._obj (fldOffset=0x0)" P-INDEP
+;* V103 tmp84 [V103 ] ( 0, 0 ) short -> zero-ref "field V58._token (fldOffset=0x8)" P-INDEP
+;* V104 tmp85 [V104 ] ( 0, 0 ) ubyte -> zero-ref "field V58._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
+; V105 tmp86 [V105,T00] ( 14, 56 ) ref -> registers "V06.[000..008)"
+;* V106 tmp87 [V106 ] ( 0, 0 ) ref -> zero-ref single-def "V39.[000..008)"
+;* V107 tmp88 [V107 ] ( 0, 0 ) int -> zero-ref single-def "V39.[008..012)"
+; V108 tmp89 [V108,T43] ( 2, 2 ) int -> rsi single-def "V39.[012..016)"
+; V109 tmp90 [V109,T33] ( 2, 4 ) ref -> rsi "argument with side effect"
+; V110 PSPSym [V110,T47] ( 1, 1 ) long -> [rbp-0xD8] do-not-enreg[V] "PSPSym"
;
-; Lcl frame size = 176
+; Lcl frame size = 200
G_M26161_IG01:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 176
- lea rbp, [rsp+0xC0]
+ sub rsp, 200
+ lea rbp, [rsp+0xE0]
xor eax, eax
- mov qword ptr [rbp-0xA8], rax
+ mov qword ptr [rbp-0xC8], rax
vxorps xmm8, xmm8, xmm8
+ vmovdqu ymmword ptr [rbp-0xC0], ymm8
vmovdqu ymmword ptr [rbp-0xA0], ymm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
vmovdqu ymmword ptr [rbp-0x40], ymm8
- mov qword ptr [rbp-0x20], rax
- mov qword ptr [rbp-0xB8], rsp
- mov bword ptr [rbp-0x88], rdi
+ mov qword ptr [rbp-0xD8], rsp
+ mov bword ptr [rbp-0xA8], rdi
mov rdx, rdi
- ;; size=77 bbWeight=1 PerfScore 16.58
+ ;; size=83 bbWeight=1 PerfScore 18.58
G_M26161_IG02:
mov esi, dword ptr [rdx+0x10]
- mov dword ptr [rbp-0x14], esi
- mov r8, gword ptr [rdx]
- mov gword ptr [rbp-0x90], r8
+ mov dword ptr [rbp-0x1C], esi
+ mov rbx, gword ptr [rdx]
+ mov gword ptr [rbp-0xB0], rbx
;; size=16 bbWeight=1 PerfScore 6.00
G_M26161_IG03:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M26161_IG35
- mov rdi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0x98], rdi
+ mov rdi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xB8], rdi
xor esi, esi
- mov dword ptr [rbp-0x20], esi
+ mov dword ptr [rbp-0x28], esi
;; size=26 bbWeight=1 PerfScore 7.25
G_M26161_IG04:
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M26161_IG06
;; size=6 bbWeight=1 PerfScore 3.00
G_M26161_IG05:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M26161_IG06:
- lea rsi, [rbp-0x20]
+ lea rsi, [rbp-0x28]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- mov r8, gword ptr [rbp-0x90]
- cmp byte ptr [r8+0x40], 0
- jne G_M26161_IG09
- cmp byte ptr [r8+0x41], 0
+ cmp byte ptr [rbx+0x40], 0
+ jne SHORT G_M26161_IG09
+ cmp byte ptr [rbx+0x41], 0
je SHORT G_M26161_IG08
- mov rdi, gword ptr [r8+0x20]
+ mov rdi, gword ptr [rbx+0x20]
inc dword ptr [rdi+0x14]
mov edx, dword ptr [rdi+0x10]
xor esi, esi
mov dword ptr [rdi+0x10], esi
test edx, edx
jle SHORT G_M26161_IG07
mov rdi, gword ptr [rdi+0x08]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
- ;; size=71 bbWeight=1 PerfScore 25.50
+ ;; size=58 bbWeight=1 PerfScore 24.50
G_M26161_IG07:
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x20]
- mov rsi, gword ptr [r8+0x10]
+ mov rdi, gword ptr [rbx+0x20]
+ mov rsi, gword ptr [rbx+0x10]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:AddRange(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]):this
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 0
- mov r8, gword ptr [rbp-0x90]
- ;; size=48 bbWeight=1 PerfScore 14.25
+ mov byte ptr [rbx+0x41], 0
+ ;; size=26 bbWeight=1 PerfScore 11.25
G_M26161_IG08:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
jge SHORT G_M26161_IG11
- cmp byte ptr [rbp-0x20], 0
+ cmp byte ptr [rbp-0x28], 0
je SHORT G_M26161_IG11
- mov rdi, gword ptr [rbp-0x98]
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
- mov r8, gword ptr [rbp-0x90]
jmp SHORT G_M26161_IG11
- ;; size=33 bbWeight=1 PerfScore 11.00
+ ;; size=26 bbWeight=1 PerfScore 10.00
G_M26161_IG09:
mov rdi, rsp
- call G_M26161_IG59
+ call G_M26161_IG56
;; size=8 bbWeight=1 PerfScore 1.25
G_M26161_IG10:
- jmp G_M26161_IG55
+ jmp G_M26161_IG52
;; size=5 bbWeight=1 PerfScore 2.00
G_M26161_IG11:
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x08], rdi
- mov rdi, gword ptr [r8+0x20]
- mov eax, dword ptr [rdi+0x14]
- mov gword ptr [rbp-0xB0], rdi
- xor ecx, ecx
- mov dword ptr [rbp-0x7C], ecx
- mov dword ptr [rbp-0x80], eax
- ;; size=35 bbWeight=1 PerfScore 9.50
+ mov rdi, gword ptr [rbx+0x20]
+ mov esi, dword ptr [rdi+0x14]
+ vxorps xmm0, xmm0, xmm0
+ vmovdqu xmmword ptr [rbp-0x90], xmm0
+ ;; size=32 bbWeight=1 PerfScore 7.58
G_M26161_IG12:
- jmp G_M26161_IG30
- ;; size=5 bbWeight=1 PerfScore 2.00
+ vmovdqu ymm0, ymmword ptr [rbp-0xA0]
+ vmovdqu ymmword ptr [rbp-0x48], ymm0
+ ;; size=13 bbWeight=1 PerfScore 5.00
G_M26161_IG13:
- mov rax, qword ptr [rbp-0x28]
- mov qword ptr [rbp-0x48], rax
- cmp gword ptr [rbx+0x08], 0
- jne G_M26161_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M26161_IG14
- mov rdi, rbx
- mov rcx, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- call [rcx]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M26161_IG15
- ;; size=53 bbWeight=4 PerfScore 70.00
+ mov gword ptr [rbp-0x48], rdi
+ xor edi, edi
+ mov dword ptr [rbp-0x40], edi
+ mov dword ptr [rbp-0x3C], esi
+ ;; size=12 bbWeight=1 PerfScore 3.25
G_M26161_IG14:
- mov rcx, gword ptr [rbx+0x18]
- mov rax, rcx
- ;; size=7 bbWeight=4 PerfScore 9.00
+ jmp G_M26161_IG32
+ ;; size=5 bbWeight=1 PerfScore 2.00
G_M26161_IG15:
+ mov rbx, gword ptr [rbp-0x38]
+ mov rdi, qword ptr [rbp-0x30]
+ mov qword ptr [rbp-0x50], rdi
+ cmp gword ptr [rbx+0x08], 0
+ jne G_M26161_IG32
+ mov r15, rbx
+ mov rbx, gword ptr [rbp-0xB0]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M26161_IG16
+ mov rdi, r15
+ mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
+ jmp SHORT G_M26161_IG17
+ ;; size=57 bbWeight=4 PerfScore 71.00
+G_M26161_IG16:
+ mov rax, gword ptr [r15+0x18]
+ ;; size=4 bbWeight=4 PerfScore 8.00
+G_M26161_IG17:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- je G_M26161_IG26
+ je G_M26161_IG28
cmp rdx, 0xD1FFAB1E
- jle G_M26161_IG26
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x10]
- mov gword ptr [rbp-0xA0], rsi
+ jle G_M26161_IG28
+ mov rsi, gword ptr [rbx+0x10]
+ mov gword ptr [rbp-0xC0], rsi
xor esi, esi
- mov dword ptr [rbp-0x58], esi
- ;; size=57 bbWeight=4 PerfScore 60.00
-G_M26161_IG16:
- cmp byte ptr [rbp-0x58], 0
- jne G_M26161_IG20
- lea rsi, [rbp-0x58]
- mov rdi, gword ptr [rbp-0xA0]
+ mov dword ptr [rbp-0x60], esi
+ ;; size=50 bbWeight=4 PerfScore 56.00
+G_M26161_IG18:
+ cmp byte ptr [rbp-0x60], 0
+ jne G_M26161_IG22
+ lea rsi, [rbp-0x60]
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
- cmp gword ptr [rbx+0x08], 0
- je G_M26161_IG21
- mov rdi, rbx
+ cmp gword ptr [r15+0x08], 0
+ je G_M26161_IG23
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
;; size=52 bbWeight=4 PerfScore 52.00
-G_M26161_IG17:
+G_M26161_IG19:
mov rdi, rax
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+0x40]
call [rax+0x28]System.Threading.RateLimiting.RateLimiter:get_IdleDuration():System.Nullable`1[System.TimeSpan]:this
test al, al
- jne G_M26161_IG22
+ jne G_M26161_IG24
xor edx, edx
;; size=23 bbWeight=4 PerfScore 35.00
-G_M26161_IG18:
+G_M26161_IG20:
cmp rdx, 0xD1FFAB1E
- jle G_M26161_IG25
- mov r8, gword ptr [rbp-0x90]
- mov byte ptr [r8+0x41], 1
- mov rdi, gword ptr [r8+0x10]
- mov rsi, qword ptr [rbp-0x48]
+ jle G_M26161_IG27
+ mov byte ptr [rbx+0x41], 1
+ mov rdi, gword ptr [rbx+0x10]
+ mov rsi, qword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.Nullable`1[int],System.__Canon]:Remove(System.Nullable`1[int]):ubyte:this
- mov r8, gword ptr [rbp-0x90]
- mov r15, gword ptr [r8+0x28]
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M26161_IG23
- mov rdi, rbx
+ mov r14, gword ptr [rbx+0x28]
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M26161_IG25
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- ;; size=80 bbWeight=4 PerfScore 92.00
-G_M26161_IG19:
- inc dword ptr [r15+0x14]
- mov rdi, gword ptr [r15+0x08]
- mov esi, dword ptr [r15+0x10]
+ ;; size=65 bbWeight=4 PerfScore 84.00
+G_M26161_IG21:
+ inc dword ptr [r14+0x14]
+ mov rdi, gword ptr [r14+0x08]
+ mov esi, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M26161_IG24
+ jbe SHORT G_M26161_IG26
lea edx, [rsi+0x01]
- mov dword ptr [r15+0x10], edx
+ mov dword ptr [r14+0x10], edx
movsxd rsi, esi
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M26161_IG25
+ jmp SHORT G_M26161_IG27
;; size=44 bbWeight=4 PerfScore 73.00
-G_M26161_IG20:
+G_M26161_IG22:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M26161_IG21:
- mov rax, gword ptr [rbx+0x18]
- jmp G_M26161_IG17
+G_M26161_IG23:
+ mov rax, gword ptr [r15+0x18]
+ jmp G_M26161_IG19
;; size=9 bbWeight=4 PerfScore 16.00
-G_M26161_IG22:
- jmp G_M26161_IG18
+G_M26161_IG24:
+ jmp G_M26161_IG20
;; size=5 bbWeight=4 PerfScore 8.00
-G_M26161_IG23:
- mov rax, gword ptr [rbx+0x18]
- jmp SHORT G_M26161_IG19
+G_M26161_IG25:
+ mov rax, gword ptr [r15+0x18]
+ jmp SHORT G_M26161_IG21
;; size=6 bbWeight=4 PerfScore 16.00
-G_M26161_IG24:
- mov rdi, r15
+G_M26161_IG26:
+ mov rdi, r14
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
nop
;; size=19 bbWeight=4 PerfScore 16.00
-G_M26161_IG25:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M26161_IG30
- mov eax, dword ptr [rbp-0x80]
- mov rdi, gword ptr [rbp-0xB0]
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M26161_IG30
- mov rdi, gword ptr [rbp-0xA0]
+G_M26161_IG27:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M26161_IG32
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M26161_IG32
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
- jmp SHORT G_M26161_IG30
- ;; size=36 bbWeight=4 PerfScore 48.00
-G_M26161_IG26:
- cmp gword ptr [rbx+0x08], 0
- je SHORT G_M26161_IG27
- mov rdi, rbx
+ jmp SHORT G_M26161_IG32
+ ;; size=26 bbWeight=4 PerfScore 40.00
+G_M26161_IG28:
+ cmp gword ptr [r15+0x08], 0
+ je SHORT G_M26161_IG29
+ mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
call [rax]System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
- jmp SHORT G_M26161_IG28
+ jmp SHORT G_M26161_IG30
;; size=24 bbWeight=4 PerfScore 38.00
-G_M26161_IG27:
- mov rax, gword ptr [rbx+0x18]
+G_M26161_IG29:
+ mov rax, gword ptr [r15+0x18]
;; size=4 bbWeight=4 PerfScore 8.00
-G_M26161_IG28:
+G_M26161_IG30:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.Threading.RateLimiting.ReplenishingRateLimiter
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- je SHORT G_M26161_IG30
+ je SHORT G_M26161_IG32
;; size=30 bbWeight=4 PerfScore 20.00
-G_M26161_IG29:
- mov rcx, rax
- mov rdi, rcx
- mov rcx, qword ptr [rcx]
- mov rcx, qword ptr [rcx+0x48]
- call [rcx+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
- nop
- ;; size=17 bbWeight=4 PerfScore 31.00
-G_M26161_IG30:
- mov rdi, gword ptr [rbp-0xB0]
- mov eax, dword ptr [rdi+0x14]
- cmp dword ptr [rbp-0x80], eax
- jne SHORT G_M26161_IG32
- mov eax, dword ptr [rdi+0x10]
- cmp dword ptr [rbp-0x7C], eax
- jae SHORT G_M26161_IG33
- mov rax, gword ptr [rdi+0x08]
- mov ecx, dword ptr [rax+0x08]
- cmp dword ptr [rbp-0x7C], ecx
- jae SHORT G_M26161_IG31
- mov ecx, dword ptr [rbp-0x7C]
- shl rcx, 4
- lea rax, bword ptr [rax+rcx+0x10]
- mov rbx, gword ptr [rax]
- mov rax, qword ptr [rax+0x08]
- mov qword ptr [rbp-0x28], rax
- mov eax, dword ptr [rbp-0x7C]
- inc eax
- mov dword ptr [rbp-0x7C], eax
- jmp G_M26161_IG13
- ;; size=71 bbWeight=8 PerfScore 238.00
G_M26161_IG31:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ mov rdi, rax
+ mov rax, qword ptr [rax]
+ mov rax, qword ptr [rax+0x48]
+ call [rax+0x30]System.Threading.RateLimiting.ReplenishingRateLimiter:TryReplenish():ubyte:this
+ nop
+ ;; size=14 bbWeight=4 PerfScore 30.00
G_M26161_IG32:
- 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
+ lea rdi, [rbp-0x48]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.Lazy`1[System.Threading.RateLimiting.RateLimiter]]]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],System.__Canon]]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M26161_IG15
+ ;; size=34 bbWeight=8 PerfScore 42.00
G_M26161_IG33:
- mov r8, gword ptr [rbp-0x90]
- mov rsi, gword ptr [r8+0x28]
- mov ebx, dword ptr [rsi+0x14]
- mov rdx, bword ptr [rbp-0x88]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rsi, gword ptr [rbx+0x28]
+ mov r15d, dword ptr [rsi+0x14]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x20]
call CORINFO_HELP_CHECKED_ASSIGN_REF
xor rdi, rdi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov gword ptr [rdx+0x28], rdi
- ;; size=43 bbWeight=1 PerfScore 9.75
+ ;; size=44 bbWeight=1 PerfScore 9.75
G_M26161_IG34:
mov dword ptr [rdx+0x30], edi
- mov dword ptr [rdx+0x34], ebx
- mov r8, gword ptr [rbp-0x90]
- ;; size=13 bbWeight=1 PerfScore 3.00
+ mov dword ptr [rdx+0x34], r15d
+ ;; size=7 bbWeight=1 PerfScore 2.00
G_M26161_IG35:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je SHORT G_M26161_IG37
jmp G_M26161_IG45
;; size=11 bbWeight=1 PerfScore 5.00
G_M26161_IG36:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x28]
- mov gword ptr [rbp-0xA8], rdi
- mov r8, gword ptr [rbp-0x90]
+ mov gword ptr [rbp-0xC8], rdi
+ mov rbx, gword ptr [rbp-0xB0]
;; size=25 bbWeight=4 PerfScore 20.00
G_M26161_IG37:
- cmp dword ptr [rbp-0x14], 0
+ cmp dword ptr [rbp-0x1C], 0
je G_M26161_IG41
- mov rdi, gword ptr [rbp-0xA8]
+ mov rdi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.RateLimiting.RateLimiter:DisposeAsync():System.Threading.Tasks.ValueTask:this
- mov gword ptr [rbp-0x78], rax
- mov qword ptr [rbp-0x70], rdx
- mov rsi, gword ptr [rbp-0x78]
- movsx rdi, word ptr [rbp-0x70]
- mov gword ptr [rbp-0x68], rsi
- mov word ptr [rbp-0x60], di
- mov byte ptr [rbp-0x5E], 0
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov gword ptr [rbp-0x80], rax
+ mov qword ptr [rbp-0x78], rdx
+ mov rsi, gword ptr [rbp-0x80]
+ movsx rdi, word ptr [rbp-0x78]
+ mov gword ptr [rbp-0x70], rsi
+ mov word ptr [rbp-0x68], di
+ mov byte ptr [rbp-0x66], 0
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je G_M26161_IG43
- mov rsi, rbx
+ 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_M26161_IG38
test dword ptr [rax+0x34], 0xD1FFAB1E
jne G_M26161_IG43
jmp SHORT G_M26161_IG39
;; size=118 bbWeight=4 PerfScore 130.00
G_M26161_IG38:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
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_M26161_IG43
;; size=25 bbWeight=4 PerfScore 31.00
G_M26161_IG39:
xor edi, edi
- mov dword ptr [rbp-0x14], edi
+ mov dword ptr [rbp-0x1C], edi
;; size=5 bbWeight=1 PerfScore 1.25
G_M26161_IG40:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], edi
lea rdi, bword ptr [rdx+0x38]
- lea rsi, bword ptr [rbp-0x68]
+ lea rsi, bword ptr [rbp-0x70]
call CORINFO_HELP_ASSIGN_BYREF
movsq
lea rsi, bword ptr [rdx+0x18]
mov rdi, rdx
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[short,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:GetStateMachineBox[System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[short,System.Nullable`1[int]]](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
mov rsi, rax
- lea rdi, [rbp-0x68]
+ lea rdi, [rbp-0x70]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable+ConfiguredValueTaskAwaiter](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
- jmp G_M26161_IG50
+ jmp G_M26161_IG47
;; size=68 bbWeight=1 PerfScore 15.00
G_M26161_IG41:
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
vmovdqu xmm0, xmmword ptr [rdx+0x38]
- vmovdqu xmmword ptr [rbp-0x68], xmm0
+ vmovdqu xmmword ptr [rbp-0x70], xmm0
;; size=17 bbWeight=4 PerfScore 24.00
G_M26161_IG42:
xor esi, esi
mov qword ptr [rdx+0x38], rsi
mov qword ptr [rdx+0x40], rsi
- mov dword ptr [rbp-0x14], -1
+ mov dword ptr [rbp-0x1C], -1
mov dword ptr [rdx+0x10], -1
;; size=24 bbWeight=4 PerfScore 17.00
G_M26161_IG43:
- mov rbx, gword ptr [rbp-0x68]
- test rbx, rbx
+ mov r15, gword ptr [rbp-0x70]
+ test r15, r15
je SHORT G_M26161_IG45
- mov rsi, rbx
+ 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_M26161_IG44
mov edi, dword ptr [rax+0x34]
and edi, 0xD1FFAB1E
cmp edi, 0xD1FFAB1E
je SHORT G_M26161_IG45
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_M26161_IG45
;; size=75 bbWeight=4 PerfScore 66.00
G_M26161_IG44:
- mov rdi, rbx
- movsx rsi, word ptr [rbp-0x60]
+ mov rdi, r15
+ movsx rsi, word ptr [rbp-0x68]
mov r11, 0xD1FFAB1E ; code for System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
call [r11]System.Threading.Tasks.Sources.IValueTaskSource:GetResult(short):this
nop
;; size=22 bbWeight=4 PerfScore 27.00
G_M26161_IG45:
- mov rdx, bword ptr [rbp-0x88]
- lea rbx, bword ptr [rdx+0x20]
- mov r15, gword ptr [rbx]
- mov rdi, r15
- mov esi, dword ptr [rbx+0x14]
- cmp esi, dword ptr [rdi+0x14]
- jne SHORT G_M26161_IG47
- mov esi, dword ptr [rbx+0x10]
- cmp esi, dword ptr [rdi+0x10]
- jae SHORT G_M26161_IG48
- mov rdi, gword ptr [rdi+0x08]
- cmp esi, dword ptr [rdi+0x08]
- jae SHORT G_M26161_IG46
- mov rsi, gword ptr [rdi+8*rsi+0x10]
- lea rdi, bword ptr [rbx+0x08]
- call CORINFO_HELP_CHECKED_ASSIGN_REF
- inc dword ptr [rbx+0x10]
- jmp G_M26161_IG36
- ;; size=64 bbWeight=8 PerfScore 242.00
+ mov rdx, bword ptr [rbp-0xA8]
+ lea rdi, bword ptr [rdx+0x20]
+ mov rsi, 0xD1FFAB1E ; System.Collections.Generic.List`1+Enumerator[System.Threading.RateLimiting.RateLimiter]
+ mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ call [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+ test eax, eax
+ jne G_M26161_IG36
+ ;; size=41 bbWeight=8 PerfScore 50.00
G_M26161_IG46:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
-G_M26161_IG47:
- 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_M26161_IG48:
- mov edi, dword ptr [r15+0x10]
- inc edi
- mov dword ptr [rbx+0x10], edi
- xor rdi, rdi
- mov gword ptr [rbx+0x08], rdi
- ;; size=15 bbWeight=8 PerfScore 36.00
-G_M26161_IG49:
- jmp SHORT G_M26161_IG52
+ jmp SHORT G_M26161_IG49
;; size=2 bbWeight=1 PerfScore 2.00
-G_M26161_IG50:
+G_M26161_IG47:
mov rdi, rsp
- call G_M26161_IG81
+ call G_M26161_IG78
;; size=8 bbWeight=1 PerfScore 1.25
-G_M26161_IG51:
- jmp G_M26161_IG57
+G_M26161_IG48:
+ jmp G_M26161_IG54
;; size=5 bbWeight=1 PerfScore 2.00
-G_M26161_IG52:
+G_M26161_IG49:
xor edi, edi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov qword ptr [rdx+0x20], rdi
mov qword ptr [rdx+0x28], rdi
mov qword ptr [rdx+0x30], rdi
- mov r8, gword ptr [rbp-0x90]
- mov rdi, gword ptr [r8+0x28]
+ mov rbx, gword ptr [rbp-0xB0]
+ mov rdi, gword ptr [rbx+0x28]
inc dword ptr [rdi+0x14]
mov esi, dword ptr [rdi+0x10]
xor eax, eax
mov dword ptr [rdi+0x10], eax
test esi, esi
- jle SHORT G_M26161_IG53
+ jle SHORT G_M26161_IG50
mov rdi, gword ptr [rdi+0x08]
mov edx, esi
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Array:Clear(System.Array,int,int)
call [rax]System.Array:Clear(System.Array,int,int)
;; size=67 bbWeight=1 PerfScore 20.50
-G_M26161_IG53:
- mov rdx, bword ptr [rbp-0x88]
+G_M26161_IG50:
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- je SHORT G_M26161_IG55
+ je SHORT G_M26161_IG52
;; size=14 bbWeight=1 PerfScore 5.00
-G_M26161_IG54:
+G_M26161_IG51:
mov rdi, 0xD1FFAB1E ; System.AggregateException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
mov rsi, gword ptr [rdx+0x08]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
call [rax]System.AggregateException:.ctor(System.Collections.Generic.IEnumerable`1[System.Exception]):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=53 bbWeight=0 PerfScore 0.00
-G_M26161_IG55:
- mov rdx, bword ptr [rbp-0x88]
+G_M26161_IG52:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
cmp gword ptr [rdi], 0
- jne SHORT G_M26161_IG56
+ jne SHORT G_M26161_IG53
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
call CORINFO_HELP_CHECKED_ASSIGN_REF
- jmp SHORT G_M26161_IG57
+ jmp SHORT G_M26161_IG54
;; size=50 bbWeight=1 PerfScore 13.00
-G_M26161_IG56:
+G_M26161_IG53:
mov rdi, gword ptr [rdi]
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.Threading.Tasks.VoidTaskResult]:SetExistingTaskResult(System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult],System.Threading.Tasks.VoidTaskResult)
;; size=20 bbWeight=1 PerfScore 6.50
-G_M26161_IG57:
+G_M26161_IG54:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M26161_IG58:
- add rsp, 176
+G_M26161_IG55:
+ vzeroupper
+ add rsp, 200
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=12 bbWeight=1 PerfScore 2.75
-G_M26161_IG59:
+ ;; size=17 bbWeight=1 PerfScore 4.25
+G_M26161_IG56:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M26161_IG60:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M26161_IG61
- cmp byte ptr [rbp-0x20], 0
- je SHORT G_M26161_IG61
- mov rdi, gword ptr [rbp-0x98]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M26161_IG57:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M26161_IG58
+ cmp byte ptr [rbp-0x28], 0
+ je SHORT G_M26161_IG58
+ mov rdi, gword ptr [rbp-0xB8]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=1 PerfScore 8.00
-G_M26161_IG61:
+G_M26161_IG58:
nop
;; size=1 bbWeight=1 PerfScore 0.25
-G_M26161_IG62:
- add rsp, 16
+G_M26161_IG59:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M26161_IG63:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M26161_IG60:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG64:
- cmp dword ptr [rbp-0x14], 0
- jge SHORT G_M26161_IG65
- cmp byte ptr [rbp-0x58], 0
- je SHORT G_M26161_IG65
- mov rdi, gword ptr [rbp-0xA0]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M26161_IG61:
+ cmp dword ptr [rbp-0x1C], 0
+ jge SHORT G_M26161_IG62
+ cmp byte ptr [rbp-0x60], 0
+ je SHORT G_M26161_IG62
+ mov rdi, gword ptr [rbp-0xC0]
call System.Threading.Monitor:Exit(System.Object)
;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG65:
+G_M26161_IG62:
nop
;; size=1 bbWeight=0 PerfScore 0.00
-G_M26161_IG66:
- add rsp, 16
+G_M26161_IG63:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M26161_IG67:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M26161_IG64:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG68:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M26161_IG65:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M26161_IG69
+ jne SHORT G_M26161_IG66
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M26161_IG69:
- mov rdx, bword ptr [rbp-0x88]
+G_M26161_IG66:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M26161_IG70
+ jbe SHORT G_M26161_IG67
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M26161_IG71
+ jmp SHORT G_M26161_IG68
;; size=55 bbWeight=0 PerfScore 0.00
-G_M26161_IG70:
+G_M26161_IG67:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M26161_IG71:
- lea rax, G_M26161_IG30
+G_M26161_IG68:
+ lea rax, G_M26161_IG32
;; size=7 bbWeight=0 PerfScore 0.00
-G_M26161_IG72:
- add rsp, 16
+G_M26161_IG69:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M26161_IG73:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M26161_IG70:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG74:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M26161_IG71:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M26161_IG75:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M26161_IG72:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG76:
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M26161_IG73:
mov rbx, rsi
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
cmp gword ptr [rdx+0x08], 0
- jne SHORT G_M26161_IG77
+ jne SHORT G_M26161_IG74
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor():this
call [rax]System.Collections.Generic.List`1[System.__Canon]:.ctor():this
- mov rdx, bword ptr [rbp-0x88]
+ mov rdx, bword ptr [rbp-0xA8]
lea rdi, bword ptr [rdx+0x08]
mov rsi, r15
call CORINFO_HELP_CHECKED_ASSIGN_REF
;; size=69 bbWeight=0 PerfScore 0.00
-G_M26161_IG77:
- mov rdx, bword ptr [rbp-0x88]
+G_M26161_IG74:
+ mov rdx, bword ptr [rbp-0xA8]
mov rdi, gword ptr [rdx+0x08]
inc dword ptr [rdi+0x14]
mov rax, gword ptr [rdi+0x08]
mov esi, dword ptr [rdi+0x10]
cmp dword ptr [rax+0x08], esi
- jbe SHORT G_M26161_IG78
+ jbe SHORT G_M26161_IG75
lea ecx, [rsi+0x01]
mov dword ptr [rdi+0x10], ecx
movsxd rsi, esi
mov rdi, rax
mov rdx, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
- jmp SHORT G_M26161_IG79
+ jmp SHORT G_M26161_IG76
;; size=55 bbWeight=0 PerfScore 0.00
-G_M26161_IG78:
+G_M26161_IG75:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
;; size=15 bbWeight=0 PerfScore 0.00
-G_M26161_IG79:
+G_M26161_IG76:
lea rax, G_M26161_IG45
;; size=7 bbWeight=0 PerfScore 0.00
-G_M26161_IG80:
- add rsp, 16
+G_M26161_IG77:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
-G_M26161_IG81:
+ ;; size=14 bbWeight=0 PerfScore 0.00
+G_M26161_IG78:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=1 PerfScore 6.75
-G_M26161_IG82:
- add rsp, 16
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=1 PerfScore 7.75
+G_M26161_IG79:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=1 PerfScore 2.75
-G_M26161_IG83:
+ ;; size=14 bbWeight=1 PerfScore 4.25
+G_M26161_IG80:
push rbp
push r15
+ push r14
push rbx
- sub rsp, 16
+ sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0xC0]
- ;; size=24 bbWeight=0 PerfScore 0.00
-G_M26161_IG84:
- mov rdx, bword ptr [rbp-0x88]
+ lea rbp, [rbp+0xE0]
+ ;; size=26 bbWeight=0 PerfScore 0.00
+G_M26161_IG81:
+ mov rdx, bword ptr [rbp-0xA8]
mov dword ptr [rdx+0x10], -2
xor rdi, rdi
mov gword ptr [rdx+0x08], rdi
lea rdi, bword ptr [rdx+0x18]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
call [rax]System.Runtime.CompilerServices.AsyncTaskMethodBuilder:SetException(System.Exception):this
- lea rax, G_M26161_IG57
+ lea rax, G_M26161_IG54
;; size=43 bbWeight=0 PerfScore 0.00
-G_M26161_IG85:
- add rsp, 16
+G_M26161_IG82:
+ vzeroupper
+ add rsp, 24
pop rbx
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0 PerfScore 0.00
+ ;; size=14 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2304, prolog size 77, PerfScore 1635.83, instruction count 574, allocated bytes for code 2304 (MethodHash=9d3f99ce) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[short,System.Nullable`1[int]]:MoveNext():this (FullOpts)
+; Total bytes of code 2192, prolog size 83, PerfScore 1199.67, instruction count 549, allocated bytes for code 2192 (MethodHash=9d3f99ce) for method System.Threading.RateLimiting.DefaultPartitionedRateLimiter`2+<Heartbeat>d__23[short,System.Nullable`1[int]]:MoveNext():this (FullOpts)