Assembly Diffs

osx arm64

Diffs are based on 2,030,708 contexts (927,669 MinOpts, 1,103,039 FullOpts).

MISSED contexts: base: 0 (0.00%), diff: 101 (0.00%)

Overall (+4 bytes)

Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.osx.arm64.checked.mch 486,149,188 +16
libraries_tests.run.osx.arm64.Release.mch 313,700,352 -12

FullOpts (+4 bytes)

Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.osx.arm64.checked.mch 153,903,812 +16
libraries_tests.run.osx.arm64.Release.mch 111,962,764 -12

Example diffs

coreclr_tests.run.osx.arm64.checked.mch

+16 (+0.58%) : 487270.dasm - Program:TestEntryPoint() (FullOpts)

@@ -9,198 +9,199 @@ ; Final local variable assignments ; ;# V00 OutArgs [V00 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V01 tmp1 [V01,T02] ( 3, 1.50) int -> x0 "Inline return value spill temp"
+; V01 tmp1 [V01,T03] ( 3, 1.50) int -> x0 "Inline return value spill temp"
;* V02 tmp2 [V02 ] ( 0, 0 ) long -> zero-ref "fgMakeTemp is creating a new local variable" ;* V03 tmp3 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "spilling QMark2" <System.RuntimeType>
-; V04 tmp4 [V04,T65] ( 17, 0 ) int -> x0 "Inline return value spill temp" -; V05 tmp5 [V05,T64] ( 18, 0 ) ref -> x19 class-hnd "Inline stloc first use temp" <System.RuntimeType> -; V06 tmp6 [V06,T72] ( 3, 0 ) ref -> x1 single-def "CASTCLASS eval op1" -; V07 tmp7 [V07,T73] ( 3, 0 ) long -> x2 "fgMakeTemp is creating a new local variable" -; V08 tmp8 [V08,T71] ( 4, 0 ) ref -> x19 class-hnd single-def "spilling QMark2" <System.RuntimeType> -;* V09 tmp9 [V09,T18] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V10 tmp10 [V10,T19] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+; V04 tmp4 [V04,T66] ( 17, 0 ) int -> x0 "Inline return value spill temp" +; V05 tmp5 [V05,T65] ( 18, 0 ) ref -> x19 class-hnd "Inline stloc first use temp" <System.RuntimeType> +; V06 tmp6 [V06,T73] ( 3, 0 ) ref -> x1 single-def "CASTCLASS eval op1" +; V07 tmp7 [V07,T74] ( 3, 0 ) long -> x2 "fgMakeTemp is creating a new local variable" +; V08 tmp8 [V08,T72] ( 4, 0 ) ref -> x19 class-hnd single-def "spilling QMark2" <System.RuntimeType> +;* V09 tmp9 [V09,T19] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V10 tmp10 [V10,T20] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V11 tmp11 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V12 tmp12 [V12,T20] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V13 tmp13 [V13,T21] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V12 tmp12 [V12,T21] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V13 tmp13 [V13,T22] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V14 tmp14 [V14 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V15 tmp15 [V15,T22] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V16 tmp16 [V16,T23] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V15 tmp15 [V15,T23] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V16 tmp16 [V16,T24] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V17 tmp17 [V17 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V18 tmp18 [V18,T24] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V19 tmp19 [V19,T25] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V18 tmp18 [V18,T25] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V19 tmp19 [V19,T26] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V20 tmp20 [V20 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V21 tmp21 [V21,T26] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V22 tmp22 [V22,T27] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V21 tmp21 [V21,T27] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V22 tmp22 [V22,T28] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V23 tmp23 [V23 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V24 tmp24 [V24,T28] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V25 tmp25 [V25,T29] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V24 tmp24 [V24,T29] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V25 tmp25 [V25,T30] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V26 tmp26 [V26 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V27 tmp27 [V27,T30] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V28 tmp28 [V28,T31] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V27 tmp27 [V27,T31] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V28 tmp28 [V28,T32] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V29 tmp29 [V29 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V30 tmp30 [V30,T32] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V31 tmp31 [V31,T33] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
+;* V30 tmp30 [V30,T33] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V31 tmp31 [V31,T34] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp"
;* V32 tmp32 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType>
-;* V33 tmp33 [V33,T34] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V34 tmp34 [V34,T35] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V35 tmp35 [V35,T03] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V36 tmp36 [V36,T36] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V37 tmp37 [V37,T37] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V38 tmp38 [V38,T04] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V39 tmp39 [V39,T38] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V40 tmp40 [V40,T39] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V41 tmp41 [V41,T05] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V42 tmp42 [V42,T40] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V43 tmp43 [V43,T41] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V44 tmp44 [V44,T06] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V45 tmp45 [V45,T42] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V46 tmp46 [V46,T43] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V47 tmp47 [V47,T07] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V48 tmp48 [V48,T44] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V49 tmp49 [V49,T45] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V50 tmp50 [V50,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V51 tmp51 [V51,T46] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V52 tmp52 [V52,T47] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V53 tmp53 [V53,T09] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V54 tmp54 [V54,T48] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V55 tmp55 [V55,T49] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V56 tmp56 [V56,T10] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V57 tmp57 [V57,T50] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V58 tmp58 [V58,T51] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V59 tmp59 [V59,T11] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V60 tmp60 [V60,T52] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V61 tmp61 [V61,T53] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V62 tmp62 [V62,T12] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V63 tmp63 [V63,T54] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V64 tmp64 [V64,T55] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V65 tmp65 [V65,T13] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V66 tmp66 [V66,T56] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V67 tmp67 [V67,T57] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V68 tmp68 [V68,T14] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V69 tmp69 [V69,T58] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V70 tmp70 [V70,T59] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V71 tmp71 [V71,T15] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V72 tmp72 [V72,T60] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V73 tmp73 [V73,T61] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V74 tmp74 [V74,T16] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V75 tmp75 [V75,T62] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V76 tmp76 [V76,T63] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V77 tmp77 [V77,T17] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -; V78 tmp78 [V78,T74] ( 3, 0 ) int -> x0 "Inline return value spill temp" -; V79 tmp79 [V79,T01] ( 6, 4 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
+;* V33 tmp33 [V33,T35] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V34 tmp34 [V34,T36] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V35 tmp35 [V35,T04] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V36 tmp36 [V36,T37] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V37 tmp37 [V37,T38] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V38 tmp38 [V38,T05] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V39 tmp39 [V39,T39] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V40 tmp40 [V40,T40] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V41 tmp41 [V41,T06] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V42 tmp42 [V42,T41] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V43 tmp43 [V43,T42] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V44 tmp44 [V44,T07] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V45 tmp45 [V45,T43] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V46 tmp46 [V46,T44] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V47 tmp47 [V47,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V48 tmp48 [V48,T45] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V49 tmp49 [V49,T46] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V50 tmp50 [V50,T09] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V51 tmp51 [V51,T47] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V52 tmp52 [V52,T48] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V53 tmp53 [V53,T10] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V54 tmp54 [V54,T49] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V55 tmp55 [V55,T50] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V56 tmp56 [V56,T11] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V57 tmp57 [V57,T51] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V58 tmp58 [V58,T52] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V59 tmp59 [V59,T12] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V60 tmp60 [V60,T53] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V61 tmp61 [V61,T54] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V62 tmp62 [V62,T13] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V63 tmp63 [V63,T55] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V64 tmp64 [V64,T56] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V65 tmp65 [V65,T14] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V66 tmp66 [V66,T57] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V67 tmp67 [V67,T58] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V68 tmp68 [V68,T15] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V69 tmp69 [V69,T59] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V70 tmp70 [V70,T60] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V71 tmp71 [V71,T16] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V72 tmp72 [V72,T61] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V73 tmp73 [V73,T62] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V74 tmp74 [V74,T17] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V75 tmp75 [V75,T63] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V76 tmp76 [V76,T64] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V77 tmp77 [V77,T18] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +; V78 tmp78 [V78,T75] ( 3, 0 ) int -> x0 "Inline return value spill temp" +; V79 tmp79 [V79,T02] ( 6, 4 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
;* V80 tmp80 [V80 ] ( 0, 0 ) long -> zero-ref "fgMakeTemp is creating a new local variable" ;* V81 tmp81 [V81 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.RuntimeType>
-; V82 tmp82 [V82,T75] ( 3, 0 ) int -> x0 "guarded devirt return temp"
+; V82 tmp82 [V82,T76] ( 3, 0 ) int -> x0 "guarded devirt return temp"
;* V83 tmp83 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.RuntimeType> ;* V84 tmp84 [V84 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" ;* V85 tmp85 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.RuntimeType> ;* V86 tmp86 [V86 ] ( 0, 0 ) ref -> zero-ref "CASTCLASS eval op1" ;* V87 tmp87 [V87 ] ( 0, 0 ) long -> zero-ref "fgMakeTemp is creating a new local variable" ;* V88 tmp88 [V88 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.RuntimeType>
-;* V89 tmp89 [V89,T102] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V90 tmp90 [V90,T103] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V91 tmp91 [V91,T86] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V92 tmp92 [V92,T104] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V93 tmp93 [V93,T105] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V94 tmp94 [V94,T87] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V95 tmp95 [V95,T106] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V96 tmp96 [V96,T107] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V97 tmp97 [V97,T88] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V98 tmp98 [V98,T108] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V99 tmp99 [V99,T109] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V100 tmp100 [V100,T89] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V101 tmp101 [V101,T110] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V102 tmp102 [V102,T111] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V103 tmp103 [V103,T90] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V104 tmp104 [V104,T112] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V105 tmp105 [V105,T113] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V106 tmp106 [V106,T91] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V107 tmp107 [V107,T114] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V108 tmp108 [V108,T115] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V109 tmp109 [V109,T92] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V110 tmp110 [V110,T116] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V111 tmp111 [V111,T117] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V112 tmp112 [V112,T93] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V113 tmp113 [V113,T118] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V114 tmp114 [V114,T119] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V115 tmp115 [V115,T94] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V116 tmp116 [V116,T120] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V117 tmp117 [V117,T121] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V118 tmp118 [V118,T95] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V119 tmp119 [V119,T122] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V120 tmp120 [V120,T123] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V121 tmp121 [V121,T96] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V122 tmp122 [V122,T124] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V123 tmp123 [V123,T125] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V124 tmp124 [V124,T97] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V125 tmp125 [V125,T126] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V126 tmp126 [V126,T127] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V127 tmp127 [V127,T98] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -;* V128 tmp128 [V128,T128] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" -;* V129 tmp129 [V129,T129] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" -;* V130 tmp130 [V130,T99] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> -; V131 tmp131 [V131,T76] ( 3, 0 ) int -> x0 "Inline return value spill temp" -; V132 tmp132 [V132,T66] ( 6, 0 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
+;* V89 tmp89 [V89,T103] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V90 tmp90 [V90,T104] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V91 tmp91 [V91,T87] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V92 tmp92 [V92,T105] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V93 tmp93 [V93,T106] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V94 tmp94 [V94,T88] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V95 tmp95 [V95,T107] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V96 tmp96 [V96,T108] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V97 tmp97 [V97,T89] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V98 tmp98 [V98,T109] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V99 tmp99 [V99,T110] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V100 tmp100 [V100,T90] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V101 tmp101 [V101,T111] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V102 tmp102 [V102,T112] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V103 tmp103 [V103,T91] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V104 tmp104 [V104,T113] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V105 tmp105 [V105,T114] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V106 tmp106 [V106,T92] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V107 tmp107 [V107,T115] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V108 tmp108 [V108,T116] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V109 tmp109 [V109,T93] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V110 tmp110 [V110,T117] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V111 tmp111 [V111,T118] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V112 tmp112 [V112,T94] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V113 tmp113 [V113,T119] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V114 tmp114 [V114,T120] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V115 tmp115 [V115,T95] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V116 tmp116 [V116,T121] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V117 tmp117 [V117,T122] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V118 tmp118 [V118,T96] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V119 tmp119 [V119,T123] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V120 tmp120 [V120,T124] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V121 tmp121 [V121,T97] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V122 tmp122 [V122,T125] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V123 tmp123 [V123,T126] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V124 tmp124 [V124,T98] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V125 tmp125 [V125,T127] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V126 tmp126 [V126,T128] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V127 tmp127 [V127,T99] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +;* V128 tmp128 [V128,T129] ( 0, 0 ) int -> zero-ref single-def "Inline return value spill temp" +;* V129 tmp129 [V129,T130] ( 0, 0 ) int -> zero-ref "Inline return value spill temp" +;* V130 tmp130 [V130,T100] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.RuntimeType> +; V131 tmp131 [V131,T77] ( 3, 0 ) int -> x0 "Inline return value spill temp" +; V132 tmp132 [V132,T67] ( 6, 0 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
...

libraries_tests.run.osx.arm64.Release.mch

-24 (-0.51%) : 125206.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateArgumentCallSites(Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain,System.Reflection.ParameterInfo[],ubyte):Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]:this (Tier1)

@@ -9,133 +9,133 @@ ; 19 inlinees with PGO data; 57 single block inlinees; 1 inlinees without PGO data ; Final local variable assignments ;
-; V00 this [V00,T18] ( 8, 6.35) ref -> x20 this class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory>
+; V00 this [V00,T19] ( 8, 6.35) ref -> x20 this class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory>
;* V01 arg1 [V01 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
-; V02 arg2 [V02,T45] ( 3, 2 ) ref -> x23 class-hnd single-def <System.Type> -; V03 arg3 [V03,T28] ( 6, 4.17) ref -> x21 class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain>
+; V02 arg2 [V02,T46] ( 3, 2 ) ref -> x23 class-hnd single-def <System.Type> +; V03 arg3 [V03,T29] ( 6, 4.17) ref -> x21 class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain>
; V04 arg4 [V04,T04] ( 19, 12.30) ref -> x19 class-hnd single-def <System.Reflection.ParameterInfo[]>
-; V05 arg5 [V05,T44] ( 3, 2.04) ubyte -> x22 single-def -; V06 loc0 [V06,T30] ( 6, 5.81) ref -> x25 class-hnd exact single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]> -; V07 loc1 [V07,T02] ( 18, 15.86) int -> x26
+; V05 arg5 [V05,T45] ( 3, 2.04) ubyte -> x22 single-def +; V06 loc0 [V06,T31] ( 6, 5.81) ref -> x25 class-hnd exact single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]> +; V07 loc1 [V07,T03] ( 18, 15.86) int -> x26
; V08 loc2 [V08,T05] ( 18, 14.04) ref -> x27 class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite>
-; V09 loc3 [V09,T35] ( 15, 4.39) ref -> [fp+0x60] class-hnd <System.Type> -; V10 loc4 [V10 ] ( 4, 0.13) ref -> [fp+0x118] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object> -; V11 loc5 [V11,T33] ( 8, 4.78) ref -> x28 class-hnd <System.Object[]> -; V12 loc6 [V12,T48] ( 10, 3.04) int -> [fp+0x114] -; V13 loc7 [V13,T63] ( 8, 0.47) ref -> [fp+0x58] class-hnd <System.Object> -; V14 loc8 [V14,T64] ( 6, 0.43) ref -> x4 class-hnd <Microsoft.Extensions.DependencyInjection.FromKeyedServicesAttribute>
+; V09 loc3 [V09,T36] ( 15, 4.39) ref -> [fp+0x50] class-hnd <System.Type> +; V10 loc4 [V10 ] ( 4, 0.13) ref -> [fp+0x108] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object> +; V11 loc5 [V11,T34] ( 8, 4.78) ref -> x28 class-hnd <System.Object[]> +; V12 loc6 [V12,T50] ( 10, 3.04) int -> [fp+0x104] +; V13 loc7 [V13,T64] ( 8, 0.47) ref -> [fp+0x48] class-hnd <System.Object> +; V14 loc8 [V14,T65] ( 6, 0.43) ref -> x4 class-hnd <Microsoft.Extensions.DependencyInjection.FromKeyedServicesAttribute>
;* V15 loc9 [V15 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ;# V16 OutArgs [V16 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V17 tmp1 [V17,T76] ( 6, 0 ) ref -> x27 class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite> -; V18 tmp2 [V18,T84] ( 3, 0 ) ref -> x28 class-hnd exact "NewObj constructor temp" <<unknown class>> -; V19 tmp3 [V19,T85] ( 3, 0 ) ref -> x27 class-hnd exact "NewObj constructor temp" <<unknown class>> -; V20 tmp4 [V20,T65] ( 6, 0.26) ref -> x27 class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite>
+; V17 tmp1 [V17,T78] ( 6, 0 ) ref -> x27 class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite> +; V18 tmp2 [V18,T86] ( 3, 0 ) ref -> x28 class-hnd exact "NewObj constructor temp" <<unknown class>> +; V19 tmp3 [V19,T87] ( 3, 0 ) ref -> x24 class-hnd exact "NewObj constructor temp" <<unknown class>> +; V20 tmp4 [V20,T66] ( 6, 0.26) ref -> x27 class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite>
;* V21 tmp5 [V21 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "spilled call-like call argument" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
-; V22 tmp6 [V22,T39] ( 4, 4.35) ref -> x2 "guarded devirt return temp" -; V23 tmp7 [V23,T01] ( 22, 17.40) ref -> [fp+0x50] "guarded devirt arg temp"
+; V22 tmp6 [V22,T40] ( 4, 4.35) ref -> x2 "guarded devirt return temp" +; V23 tmp7 [V23,T02] ( 22, 17.40) ref -> [fp+0x40] "guarded devirt arg temp"
;* V24 tmp8 [V24 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeParameterInfo>
-; V25 tmp9 [V25,T36] ( 8, 4.35) ref -> x28 "guarded devirt return temp"
+; V25 tmp9 [V25,T37] ( 8, 4.35) ref -> x28 "guarded devirt return temp"
; V26 tmp10 [V26,T00] ( 19, 26.13) ref -> x28 "guarded devirt arg temp" ;* V27 tmp11 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeParameterInfo>
-; V28 tmp12 [V28,T72] ( 8, 0.00) ref -> [fp+0x48] class-hnd "Inline stloc first use temp" <System.RuntimeType>
+; V28 tmp12 [V28,T74] ( 8, 0.00) ref -> [fp+0x38] class-hnd "Inline stloc first use temp" <System.RuntimeType>
;* V29 tmp13 [V29 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Signature> ;* V30 tmp14 [V30 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Signature> ;* V31 tmp15 [V31 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" ;* V32 tmp16 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Object[]>
-; V33 tmp17 [V33 ] ( 18, 15.37) struct (24) [fp+0xF8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Attribute]> -; V34 tmp18 [V34,T09] ( 10, 8.70) ref -> x1 class-hnd exact "impAppendStmt" <System.Reflection.RuntimeModule> -; V35 tmp19 [V35,T15] ( 4, 8.70) int -> x2 "impAppendStmt"
+; V33 tmp17 [V33 ] ( 18, 15.37) struct (24) [fp+0xE8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Attribute]> +; V34 tmp18 [V34,T10] ( 10, 8.70) ref -> x1 class-hnd exact "impAppendStmt" <System.Reflection.RuntimeModule> +; V35 tmp19 [V35,T16] ( 4, 8.70) int -> x2 "impAppendStmt"
;* V36 tmp20 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Object[]> ;* V37 tmp21 [V37 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V38 tmp22 [V38,T11] ( 4, 8.70) ref -> x2 "CASTCLASS eval op1"
+; V38 tmp22 [V38,T12] ( 4, 8.70) ref -> x2 "CASTCLASS eval op1"
;* V39 tmp23 [V39 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.Reflection.RuntimeMethodInfo>
-; V40 tmp24 [V40,T20] ( 12, 8.15) ref -> x2 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimeMethodInfo> -; V41 tmp25 [V41,T12] ( 4, 8.70) ref -> x3 "CASTCLASS eval op1"
+; V40 tmp24 [V40,T21] ( 12, 8.15) ref -> x2 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimeMethodInfo> +; V41 tmp25 [V41,T13] ( 4, 8.70) ref -> x3 "CASTCLASS eval op1"
;* V42 tmp26 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.Reflection.RuntimeConstructorInfo>
-; V43 tmp27 [V43,T07] ( 12, 10.33) ref -> x3 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimeConstructorInfo> -; V44 tmp28 [V44,T13] ( 4, 8.70) ref -> x1 "CASTCLASS eval op1"
+; V43 tmp27 [V43,T08] ( 12, 10.33) ref -> x3 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimeConstructorInfo> +; V44 tmp28 [V44,T14] ( 4, 8.70) ref -> x1 "CASTCLASS eval op1"
;* V45 tmp29 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.Reflection.RuntimePropertyInfo>
-; V46 tmp30 [V46,T29] ( 12, 5.98) ref -> x1 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimePropertyInfo>
+; V46 tmp30 [V46,T30] ( 12, 5.98) ref -> x1 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimePropertyInfo>
;* V47 tmp31 [V47 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V48 tmp32 [V48,T77] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
+; V48 tmp32 [V48,T79] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V49 tmp33 [V49 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V50 tmp34 [V50 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V51 tmp35 [V51,T78] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
+; V51 tmp35 [V51,T80] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V52 tmp36 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Object[]>
-; V53 tmp37 [V53 ] ( 20, 15.35) struct (24) [fp+0xE0] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Object]> -; V54 tmp38 [V54 ] ( 4, 4.35) struct (24) [fp+0xC8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Object]>
+; V53 tmp37 [V53 ] ( 20, 15.35) struct (24) [fp+0xD0] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Object]> +; V54 tmp38 [V54 ] ( 4, 4.35) struct (24) [fp+0xB8] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Object]>
;* V55 tmp39 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType> ;* V56 tmp40 [V56 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType>
-; V57 tmp41 [V57,T16] ( 4, 8.70) int -> x28 "Inlining Arg" -; V58 tmp42 [V58,T19] ( 12, 8.31) ref -> x28 class-hnd "Inline stloc first use temp" <System.Object[]> -; V59 tmp43 [V59,T23] ( 16, 7.00) int -> [fp+0xC4] "Inline stloc first use temp" -; V60 tmp44 [V60,T42] ( 6, 4.30) ref -> x2 class-hnd "Inline return value spill temp" <System.Object> -; V61 tmp45 [V61,T21] ( 6, 7.67) int -> x3 "Inlining Arg"
+; V57 tmp41 [V57,T17] ( 4, 8.70) int -> x28 "Inlining Arg" +; V58 tmp42 [V58,T20] ( 12, 8.31) ref -> x28 class-hnd "Inline stloc first use temp" <System.Object[]> +; V59 tmp43 [V59,T24] ( 16, 7.00) int -> [fp+0xB4] "Inline stloc first use temp" +; V60 tmp44 [V60,T43] ( 6, 4.30) ref -> x2 class-hnd "Inline return value spill temp" <System.Object> +; V61 tmp45 [V61,T22] ( 6, 7.67) int -> x3 "Inlining Arg"
;* V62 tmp46 [V62 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Object> ;* V63 tmp47 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
-; V64 tmp48 [V64,T32] ( 6, 5.24) ref -> x27 class-hnd "Inline return value spill temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite>
+; V64 tmp48 [V64,T33] ( 6, 5.24) ref -> x27 class-hnd "Inline return value spill temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite>
;* V65 tmp49 [V65 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey>
-; V66 tmp50 [V66,T14] ( 4, 8.70) ref -> x1 class-hnd "impAppendStmt" <<unknown class>> -; V67 tmp51 [V67,T46] ( 6, 1.44) ref -> x4 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite> -;* V68 tmp52 [V68,T51] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" -; V69 tmp53 [V69 ] ( 8, 0 ) struct (24) [fp+0xA8] do-not-enreg[XSF] must-init addr-exposed ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> -; V70 tmp54 [V70,T08] ( 12, 8.70) ref -> [fp+0x40] class-hnd "Inline stloc first use temp" <<unknown class>> -; V71 tmp55 [V71,T37] ( 8, 4.35) ref -> [fp+0x38] class-hnd "Inline stloc first use temp" <System.Collections.Generic.IEqualityComparer`1[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey]> -; V72 tmp56 [V72,T79] ( 6, 0 ) int -> [fp+0xA4] "Inline stloc first use temp" -; V73 tmp57 [V73,T74] ( 14, 0 ) ref -> [fp+0x30] class-hnd "Inline stloc first use temp" <<unknown class>> -; V74 tmp58 [V74,T31] ( 6, 5.42) int -> [fp+0xA0] "Inline stloc first use temp" -; V75 tmp59 [V75,T03] ( 16, 14.62) ref -> [fp+0x28] class-hnd "Inline stloc first use temp" <<unknown class>>
+; V66 tmp50 [V66,T15] ( 4, 8.70) ref -> x1 class-hnd "impAppendStmt" <<unknown class>> +; V67 tmp51 [V67,T07] ( 6, 9.60) ref -> x27 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite> +;* V68 tmp52 [V68,T49] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V69 tmp53 [V69 ] ( 8, 0 ) struct (24) [fp+0x98] do-not-enreg[XSF] must-init addr-exposed ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> +; V70 tmp54 [V70,T09] ( 12, 8.70) ref -> [fp+0x30] class-hnd "Inline stloc first use temp" <<unknown class>> +; V71 tmp55 [V71,T38] ( 8, 4.35) ref -> [fp+0x28] class-hnd "Inline stloc first use temp" <System.Collections.Generic.IEqualityComparer`1[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey]> +; V72 tmp56 [V72,T81] ( 6, 0 ) int -> [fp+0x94] "Inline stloc first use temp" +; V73 tmp57 [V73,T76] ( 14, 0 ) ref -> [fp+0x20] class-hnd "Inline stloc first use temp" <<unknown class>> +; V74 tmp58 [V74,T32] ( 6, 5.42) int -> [fp+0x90] "Inline stloc first use temp" +; V75 tmp59 [V75,T01] ( 16, 22.78) ref -> [fp+0x18] class-hnd "Inline stloc first use temp" <<unknown class>>
;* V76 tmp60 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ;* V77 tmp61 [V77 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V78 tmp62 [V78,T41] ( 4, 4.35) int -> x0 "Inline return value spill temp"
+; V78 tmp62 [V78,T42] ( 4, 4.35) int -> x0 "Inline return value spill temp"
;* V79 tmp63 [V79 ] ( 0, 0 ) int -> zero-ref "impAppendStmt" ;* V80 tmp64 [V80 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling ret_expr" <System.Type>
-; V81 tmp65 [V81,T38] ( 6, 4.35) int -> x0 "guarded devirt return temp"
+; V81 tmp65 [V81,T39] ( 6, 4.35) int -> x0 "guarded devirt return temp"
;* V82 tmp66 [V82 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.RuntimeType> ;* V83 tmp67 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <<unknown class>>
-; V84 tmp68 [V84,T25] ( 7, 6.54) ref -> x4 class-hnd "Inline stloc first use temp" <<unknown class>>
+; V84 tmp68 [V84,T26] ( 7, 6.54) ref -> x6 class-hnd "Inline stloc first use temp" <<unknown class>>
;* V85 tmp69 [V85 ] ( 0, 0 ) long -> zero-ref "Inlining Arg" ;* V86 tmp70 [V86 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V87 tmp71 [V87,T26] ( 6, 6.52) int -> x3 "Inline stloc first use temp"
+; V87 tmp71 [V87,T27] ( 6, 6.52) int -> x7 "Inline stloc first use temp"
;* V88 tmp72 [V88 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V89 tmp73 [V89 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> ;* V90 tmp74 [V90 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey>
-;* V91 tmp75 [V91,T62] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V91 tmp75 [V91,T63] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V92 tmp76 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ;* V93 tmp77 [V93 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> ;* V94 tmp78 [V94 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ;* V95 tmp79 [V95 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-; V96 tmp80 [V96,T59] ( 4, 1.10) ubyte -> x10 "Inline return value spill temp"
+; V96 tmp80 [V96,T60] ( 4, 1.10) ubyte -> x13 "Inline return value spill temp"
;* V97 tmp81 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ;* V98 tmp82 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Type> ;* V99 tmp83 [V99 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Object> ;* V100 tmp84 [V100 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Type>
-; V101 tmp85 [V101,T58] ( 8, 1.10) ubyte -> x10 "Inline return value spill temp"
+; V101 tmp85 [V101,T59] ( 8, 1.10) ubyte -> x13 "Inline return value spill temp"
;* V102 tmp86 [V102 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Type>
-; V103 tmp87 [V103,T50] ( 4, 1.98) ref -> x11 class-hnd "spilling QMark2" <System.RuntimeType> -; V104 tmp88 [V104,T83] ( 4, 0 ) int -> registers "Inline return value spill temp" -; V105 tmp89 [V105 ] ( 8, 0 ) struct (24) [fp+0x88] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey>
+; V103 tmp87 [V103,T52] ( 4, 1.98) ref -> x14 class-hnd "spilling QMark2" <System.RuntimeType> +; V104 tmp88 [V104,T85] ( 4, 0 ) int -> registers "Inline return value spill temp" +; V105 tmp89 [V105 ] ( 8, 0 ) struct (24) [fp+0x78] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey>
;* V106 tmp90 [V106 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <<unknown class>>
-; V107 tmp91 [V107,T75] ( 8, 0 ) ref -> x6 class-hnd "Inline stloc first use temp" <<unknown class>>
+; V107 tmp91 [V107,T77] ( 8, 0 ) ref -> x6 class-hnd "Inline stloc first use temp" <<unknown class>>
;* V108 tmp92 [V108 ] ( 0, 0 ) long -> zero-ref "Inlining Arg" ;* V109 tmp93 [V109 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V110 tmp94 [V110,T80] ( 6, 0 ) int -> x7 "Inline stloc first use temp" -; V111 tmp95 [V111,T47] ( 7, 1.22) ref -> x24 single-def "field V01.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP -; V112 tmp96 [V112,T49] ( 1, 1 ) ref -> x2 single-def "field V01.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP -; V113 tmp97 [V113,T81] ( 4, 0 ) ref -> x1 "field V15.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP -; V114 tmp98 [V114,T82] ( 4, 0 ) ref -> x2 "field V15.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP -;* V115 tmp99 [V115,T52] ( 0, 0 ) ref -> zero-ref "field V21.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP -; V116 tmp100 [V116,T22] ( 15, 7.57) ref -> x27 "field V21.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP -; V117 tmp101 [V117 ] ( 6, 5.01) ref -> [fp+0xF8] do-not-enreg[X] addr-exposed "field V33._items (fldOffset=0x0)" P-DEP -; V118 tmp102 [V118 ] ( 6, 5.35) ref -> [fp+0x100] do-not-enreg[X] addr-exposed "field V33._item (fldOffset=0x8)" P-DEP -; V119 tmp103 [V119 ] ( 14, 13.71) int -> [fp+0x108] do-not-enreg[X] addr-exposed "field V33._count (fldOffset=0x10)" P-DEP -; V120 tmp104 [V120 ] ( 4, 4.35) int -> [fp+0x10C] do-not-enreg[X] addr-exposed "field V33._capacity (fldOffset=0x14)" P-DEP -; V121 tmp105 [V121 ] ( 10, 8.65) ref -> [fp+0xE0] do-not-enreg[X] addr-exposed "field V53._items (fldOffset=0x0)" P-DEP -; V122 tmp106 [V122 ] ( 6, 6.43) ref -> [fp+0xE8] do-not-enreg[X] addr-exposed "field V53._item (fldOffset=0x8)" P-DEP -; V123 tmp107 [V123 ] ( 12, 8.96) int -> [fp+0xF0] do-not-enreg[X] addr-exposed "field V53._count (fldOffset=0x10)" P-DEP -; V124 tmp108 [V124 ] ( 4, 4.35) int -> [fp+0xF4] do-not-enreg[X] addr-exposed "field V53._capacity (fldOffset=0x14)" P-DEP -;* V125 tmp109 [V125,T53] ( 0, 0 ) ref -> zero-ref "field V63.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP -; V126 tmp110 [V126,T40] ( 4, 4.35) ref -> x27 "field V63.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
+; V110 tmp94 [V110,T82] ( 6, 0 ) int -> x7 "Inline stloc first use temp" +; V111 tmp95 [V111,T48] ( 7, 1.22) ref -> x24 single-def "field V01.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP +; V112 tmp96 [V112,T51] ( 1, 1 ) ref -> x2 single-def "field V01.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP +; V113 tmp97 [V113,T83] ( 4, 0 ) ref -> x1 "field V15.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP +; V114 tmp98 [V114,T84] ( 4, 0 ) ref -> x2 "field V15.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP +;* V115 tmp99 [V115,T53] ( 0, 0 ) ref -> zero-ref "field V21.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP +; V116 tmp100 [V116,T23] ( 15, 7.57) ref -> x27 "field V21.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP +; V117 tmp101 [V117 ] ( 6, 5.01) ref -> [fp+0xE8] do-not-enreg[X] addr-exposed "field V33._items (fldOffset=0x0)" P-DEP +; V118 tmp102 [V118 ] ( 6, 5.35) ref -> [fp+0xF0] do-not-enreg[X] addr-exposed "field V33._item (fldOffset=0x8)" P-DEP +; V119 tmp103 [V119 ] ( 14, 13.71) int -> [fp+0xF8] do-not-enreg[X] addr-exposed "field V33._count (fldOffset=0x10)" P-DEP +; V120 tmp104 [V120 ] ( 4, 4.35) int -> [fp+0xFC] do-not-enreg[X] addr-exposed "field V33._capacity (fldOffset=0x14)" P-DEP +; V121 tmp105 [V121 ] ( 10, 8.65) ref -> [fp+0xD0] do-not-enreg[X] addr-exposed "field V53._items (fldOffset=0x0)" P-DEP +; V122 tmp106 [V122 ] ( 6, 6.43) ref -> [fp+0xD8] do-not-enreg[X] addr-exposed "field V53._item (fldOffset=0x8)" P-DEP +; V123 tmp107 [V123 ] ( 12, 8.96) int -> [fp+0xE0] do-not-enreg[X] addr-exposed "field V53._count (fldOffset=0x10)" P-DEP +; V124 tmp108 [V124 ] ( 4, 4.35) int -> [fp+0xE4] do-not-enreg[X] addr-exposed "field V53._capacity (fldOffset=0x14)" P-DEP +;* V125 tmp109 [V125,T54] ( 0, 0 ) ref -> zero-ref "field V63.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP +; V126 tmp110 [V126,T41] ( 4, 4.35) ref -> x27 "field V63.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
;* V127 tmp111 [V127 ] ( 0, 0 ) ref -> zero-ref "field V76.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP ;* V128 tmp112 [V128 ] ( 0, 0 ) ref -> zero-ref "field V76.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP ;* V129 tmp113 [V129 ] ( 0, 0 ) ref -> zero-ref "field V92.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP @@ -147,36 +147,38 @@ ;* V135 tmp119 [V135 ] ( 0, 0 ) int -> zero-ref "V65.[000..004)" ;* V136 tmp120 [V136 ] ( 0, 0 ) ref -> zero-ref "V65.[008..016)" ;* V137 tmp121 [V137 ] ( 0, 0 ) ref -> zero-ref "V65.[016..024)"
-;* V138 tmp122 [V138,T55] ( 0, 0 ) int -> zero-ref "V69.[000..004)" -;* V139 tmp123 [V139,T54] ( 0, 0 ) ref -> zero-ref "V69.[008..016)" -; V140 tmp124 [V140,T24] ( 13, 6.54) ref -> x0 "V69.[016..024)" -; V141 tmp125 [V141,T61] ( 4, 1.10) int -> [fp+0x84] "V89.[000..004)" -; V142 tmp126 [V142,T60] ( 4, 1.10) ref -> x8 "V89.[008..016)" -; V143 tmp127 [V143,T56] ( 12, 2.09) ref -> [fp+0x20] "V89.[016..024)"
+;* V138 tmp122 [V138,T56] ( 0, 0 ) int -> zero-ref "V69.[000..004)" +;* V139 tmp123 [V139,T55] ( 0, 0 ) ref -> zero-ref "V69.[008..016)" +; V140 tmp124 [V140,T25] ( 13, 6.54) ref -> x0 "V69.[016..024)" +; V141 tmp125 [V141,T62] ( 4, 1.10) int -> [fp+0x74] "V89.[000..004)" +; V142 tmp126 [V142,T61] ( 4, 1.10) ref -> x11 "V89.[008..016)" +; V143 tmp127 [V143,T57] ( 12, 2.09) ref -> x0 "V89.[016..024)"
;* V144 tmp128 [V144 ] ( 0, 0 ) int -> zero-ref "V93.[000..004)" ;* V145 tmp129 [V145 ] ( 0, 0 ) ref -> zero-ref "V93.[008..016)" ;* V146 tmp130 [V146 ] ( 0, 0 ) ref -> zero-ref "V93.[016..024)"
-; V147 tmp131 [V147,T34] ( 8, 4.40) byref -> x6 "Spilling address for field-by-field copy" -; V148 tmp132 [V148,T70] ( 6, 0.00) ref -> x3 "arr expr" -; V149 tmp133 [V149,T71] ( 6, 0.00) int -> x2 "index expr" -; V150 tmp134 [V150,T87] ( 2, 0 ) ref -> x1 "argument with side effect" -; V151 tmp135 [V151 ] ( 8, 0 ) struct (24) [fp+0x68] do-not-enreg[XS] must-init addr-exposed "by-value struct argument" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> -; V152 tmp136 [V152,T88] ( 2, 0 ) ref -> x0 "argument with side effect" -; V153 tmp137 [V153,T89] ( 2, 0 ) ref -> x1 "argument with side effect" -; V154 cse0 [V154,T43] ( 2, 4.30) int -> x2 "CSE - moderate" -; V155 cse1 [V155,T68] ( 2, 0.04) int -> x2 "CSE - conservative" -; V156 cse2 [V156,T17] ( 4, 8.61) ref -> x1 "CSE - moderate"
+; V147 tmp131 [V147,T35] ( 8, 4.40) byref -> x9 "Spilling address for field-by-field copy" +; V148 tmp132 [V148,T72] ( 6, 0.00) ref -> x3 "arr expr" +; V149 tmp133 [V149,T73] ( 6, 0.00) int -> x2 "index expr" +; V150 tmp134 [V150,T89] ( 2, 0 ) ref -> x1 "argument with side effect" +; V151 tmp135 [V151 ] ( 8, 0 ) struct (24) [fp+0x58] do-not-enreg[XS] must-init addr-exposed "by-value struct argument" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> +; V152 tmp136 [V152,T90] ( 2, 0 ) ref -> x0 "argument with side effect" +; V153 tmp137 [V153,T91] ( 2, 0 ) ref -> x1 "argument with side effect" +; V154 cse0 [V154,T44] ( 2, 4.30) int -> x4 "CSE - moderate" +; V155 cse1 [V155,T69] ( 2, 0.04) int -> x4 "CSE - conservative" +; V156 cse2 [V156,T18] ( 4, 8.61) ref -> x1 "CSE - moderate"
...

+12 (+0.14%) : 125204.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateConstructorCallSite(Microsoft.Extensions.DependencyInjection.ServiceLookup.ResultCache,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain):Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite:this (Tier1)

@@ -14,48 +14,48 @@ ;* V02 arg2 [V02 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ; V03 arg3 [V03,T13] ( 12, 6.50) ref -> x19 class-hnd single-def <System.Type> ; V04 arg4 [V04,T22] ( 10, 6.98) ref -> [fp+0xE8] class-hnd EH-live single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain>
-; V05 loc0 [V05,T31] ( 11, 7 ) ref -> x23 class-hnd single-def <System.Reflection.ConstructorInfo[]> -; V06 loc1 [V06,T82] ( 5, 2.86) ref -> x26 class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]>
+; V05 loc0 [V05,T31] ( 11, 7.00) ref -> x23 class-hnd single-def <System.Reflection.ConstructorInfo[]> +; V06 loc1 [V06,T83] ( 5, 2.86) ref -> x26 class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]>
; V07 loc2 [V07,T52] ( 22, 5.05) ref -> x22 class-hnd <System.Reflection.ConstructorInfo> ; V08 loc3 [V08,T46] ( 6, 5.57) ref -> x24 class-hnd <<unknown class>>
-; V09 loc4 [V09,T70] ( 19, 3.94) ref -> x27 class-hnd single-def <System.Reflection.ConstructorInfo>
+; V09 loc4 [V09,T71] ( 19, 3.94) ref -> x27 class-hnd single-def <System.Reflection.ConstructorInfo>
;* V10 loc5 [V10 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Reflection.ParameterInfo[]>
-; V11 loc6 [V11,T104] ( 4, 2 ) ref -> x24 class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite>
+; V11 loc6 [V11,T105] ( 4, 2 ) ref -> x24 class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite>
; V12 loc7 [V12,T49] ( 8, 5.43) int -> x25 ; V13 loc8 [V13,T11] ( 15, 12.37) ref -> x27 class-hnd <System.Reflection.ParameterInfo[]> ;* V14 loc9 [V14 ] ( 0, 0 ) ref -> zero-ref class-hnd <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]>
-; V15 loc10 [V15,T73] ( 4, 3.86) ref -> x28 class-hnd <System.Reflection.ParameterInfo[]>
+; V15 loc10 [V15,T74] ( 4, 3.86) ref -> x28 class-hnd <System.Reflection.ParameterInfo[]>
; V16 loc11 [V16,T36] ( 5, 6.43) int -> [fp+0x1B4] ; V17 loc12 [V17,T40] ( 11, 6.00) ref -> [fp+0xE0] class-hnd spill-single-def <System.Reflection.ParameterInfo>
-; V18 loc13 [V18,T90] ( 3, 2.57) ref -> x27 class-hnd <System.Reflection.ParameterInfo[]>
+; V18 loc13 [V18,T91] ( 3, 2.57) ref -> x27 class-hnd <System.Reflection.ParameterInfo[]>
; V19 loc14 [V19,T45] ( 5, 5.79) int -> x28 ; V20 loc15 [V20,T51] ( 12, 5.15) ref -> [fp+0xD8] class-hnd spill-single-def <System.Reflection.ParameterInfo> ;# V21 OutArgs [V21 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V22 tmp1 [V22,T112] ( 2, 1.71) ref -> x24 class-hnd single-def "dup spill" <<unknown class>>
+; V22 tmp1 [V22,T113] ( 2, 1.71) ref -> x24 class-hnd single-def "dup spill" <<unknown class>>
;* V23 tmp2 [V23 ] ( 0, 0 ) ref -> zero-ref single-def
-; V24 tmp3 [V24,T102] ( 5, 2.14) ref -> x24 -; V25 tmp4 [V25,T192] ( 5, 0 ) ref -> x20 class-hnd exact "dup spill" <System.Object[]> -; V26 tmp5 [V26,T203] ( 2, 0 ) ref -> x26 class-hnd exact "impSpillLclRefs" <System.String> -; V27 tmp6 [V27,T204] ( 2, 0 ) ref -> x15 class-hnd exact "Strict ordering of exceptions for Array store" <System.String> -; V28 tmp7 [V28,T205] ( 2, 0 ) ref -> x15 class-hnd "Strict ordering of exceptions for Array store" <System.Reflection.ConstructorInfo> -; V29 tmp8 [V29,T196] ( 3, 0 ) ref -> x22 class-hnd exact "NewObj constructor temp" <<unknown class>> -; V30 tmp9 [V30,T91] ( 3, 2.57) ref -> x24 class-hnd exact "NewObj constructor temp" <<unknown class>>
+; V24 tmp3 [V24,T103] ( 5, 2.14) ref -> x24 +; V25 tmp4 [V25,T194] ( 5, 0 ) ref -> x20 class-hnd exact "dup spill" <System.Object[]> +; V26 tmp5 [V26,T205] ( 2, 0 ) ref -> x26 class-hnd exact "impSpillLclRefs" <System.String> +; V27 tmp6 [V27,T206] ( 2, 0 ) ref -> x15 class-hnd exact "Strict ordering of exceptions for Array store" <System.String> +; V28 tmp7 [V28,T207] ( 2, 0 ) ref -> x15 class-hnd "Strict ordering of exceptions for Array store" <System.Reflection.ConstructorInfo> +; V29 tmp8 [V29,T198] ( 3, 0 ) ref -> x22 class-hnd exact "NewObj constructor temp" <<unknown class>> +; V30 tmp9 [V30,T92] ( 3, 2.57) ref -> x24 class-hnd exact "NewObj constructor temp" <<unknown class>>
; V31 tmp10 [V31,T41] ( 7, 6 ) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite>
-; V32 tmp11 [V32,T197] ( 3, 0 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <<unknown class>>
+; V32 tmp11 [V32,T199] ( 3, 0 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <<unknown class>>
; V33 tmp12 [V33,T67] ( 5, 4.29) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <<unknown class>> ; V34 tmp13 [V34,T32] ( 7, 7 ) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite>
-; V35 tmp14 [V35,T155] ( 3, 0.43) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite> -; V36 tmp15 [V36,T198] ( 3, 0 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <<unknown class>> -; V37 tmp16 [V37,T117] ( 4, 1.64) ref -> x5 "guarded devirt return temp"
+; V35 tmp14 [V35,T156] ( 3, 0.43) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite> +; V36 tmp15 [V36,T200] ( 3, 0 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <<unknown class>> +; V37 tmp16 [V37,T118] ( 4, 1.64) ref -> x5 "guarded devirt return temp"
;* V38 tmp17 [V38 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "guarded devirt this exact temp" <System.Reflection.RuntimeConstructorInfo>
-; V39 tmp18 [V39,T99] ( 3, 2.29) ref -> x27 "guarded devirt return temp"
+; V39 tmp18 [V39,T100] ( 3, 2.29) ref -> x27 "guarded devirt return temp"
; V40 tmp19 [V40,T26] ( 10, 7.48) ref -> x28 "guarded devirt arg temp" ;* V41 tmp20 [V41 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeConstructorInfo>
-; V42 tmp21 [V42,T143] ( 3, 0.86) ref -> x28 "guarded devirt return temp"
+; V42 tmp21 [V42,T144] ( 3, 0.86) ref -> x28 "guarded devirt return temp"
;* V43 tmp22 [V43 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeConstructorInfo>
-; V44 tmp23 [V44,T79] ( 3, 3 ) ref -> x3 "guarded devirt return temp"
+; V44 tmp23 [V44,T80] ( 3, 3 ) ref -> x3 "guarded devirt return temp"
;* V45 tmp24 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeParameterInfo>
-; V46 tmp25 [V46,T92] ( 3, 2.57) ref -> x1 "guarded devirt return temp"
+; V46 tmp25 [V46,T93] ( 3, 2.57) ref -> x3 "guarded devirt return temp"
;* V47 tmp26 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeParameterInfo> ;* V48 tmp27 [V48 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ; V49 tmp28 [V49,T42] ( 3, 6 ) ref -> x0 class-hnd single-def "impAppendStmt" <System.Collections.Generic.Dictionary`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]> @@ -64,21 +64,21 @@ ;* V52 tmp31 [V52 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" ;* V53 tmp32 [V53 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo> ;* V54 tmp33 [V54 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
-; V55 tmp34 [V55,T89] ( 4, 2.57) ref -> x25 "guarded devirt return temp" -;* V56 tmp35 [V56,T133] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "guarded devirt this exact temp" <System.RuntimeType>
+; V55 tmp34 [V55,T90] ( 4, 2.57) ref -> x25 "guarded devirt return temp" +;* V56 tmp35 [V56,T134] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "guarded devirt this exact temp" <System.RuntimeType>
;* V57 tmp36 [V57 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "Inline stloc first use temp" <System.RuntimeType+ListBuilder`1[System.Reflection.ConstructorInfo]> ;* V58 tmp37 [V58 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "Inline return value spill temp" <System.RuntimeType+ListBuilder`1[System.Reflection.ConstructorInfo]>
-;* V59 tmp38 [V59,T107] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd single-def "Inlining Arg" <System.String> -;* V60 tmp39 [V60,T135] ( 0, 0 ) ubyte -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp" -;* V61 tmp40 [V61,T136] ( 0, 0 ) ubyte -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp" -;* V62 tmp41 [V62,T137] ( 0, 0 ) int -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp"
+;* V59 tmp38 [V59,T108] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd single-def "Inlining Arg" <System.String> +;* V60 tmp39 [V60,T136] ( 0, 0 ) ubyte -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp" +;* V61 tmp40 [V61,T137] ( 0, 0 ) ubyte -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp" +;* V62 tmp41 [V62,T138] ( 0, 0 ) int -> zero-ref ld-addr-op single-def "Inline ldloca(s) first use temp"
; V63 tmp42 [V63,T39] ( 5, 6.09) ref -> x22 class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.RuntimeConstructorInfo[]> ; V64 tmp43 [V64 ] ( 8, 8.46) struct (24) [fp+0x198] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.RuntimeType+ListBuilder`1[System.Reflection.ConstructorInfo]> ; V65 tmp44 [V65,T30] ( 5, 7.19) int -> x23 "Inline stloc first use temp" ; V66 tmp45 [V66,T38] ( 4, 6.10) ref -> x24 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimeConstructorInfo> ; V67 tmp46 [V67,T66] ( 5, 4.35) ref -> x22 class-hnd "Inline return value spill temp" <System.RuntimeType+RuntimeTypeCache> ; V68 tmp47 [V68,T55] ( 5, 5 ) ref -> x22 class-hnd single-def "Inline stloc first use temp" <System.Object>
-; V69 tmp48 [V69,T68] ( 2, 4 ) ref -> x0 class-hnd "spilling QMark2" <System.RuntimeType+RuntimeTypeCache>
+; V69 tmp48 [V69,T69] ( 2, 4 ) ref -> x0 class-hnd "spilling QMark2" <System.RuntimeType+RuntimeTypeCache>
;* V70 tmp49 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd "updating class info" <System.RuntimeType+RuntimeTypeCache> ;* V71 tmp50 [V71 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" ;* V72 tmp51 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inlining Arg" <System.String> @@ -87,79 +87,79 @@ ;* V75 tmp54 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <<unknown class>> ;* V76 tmp55 [V76 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <<unknown class>> ; V77 tmp56 [V77,T65] ( 7, 4.41) ref -> x0 class-hnd "Inline stloc first use temp" <<unknown class>>
-; V78 tmp57 [V78,T83] ( 4, 2.81) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <<unknown class>>
+; V78 tmp57 [V78,T84] ( 4, 2.81) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <<unknown class>>
;* V79 tmp58 [V79 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <<unknown class>>
-; V80 tmp59 [V80,T69] ( 2, 4 ) int -> x1 "Inlining Arg" -; V81 tmp60 [V81,T105] ( 4, 2 ) ref -> x25 class-hnd "Inline return value spill temp" <System.Reflection.ConstructorInfo[]> -; V82 tmp61 [V82,T76] ( 3, 3.43) ref -> x25 class-hnd exact single-def "dup spill" <System.Reflection.ConstructorInfo[]>
+; V80 tmp59 [V80,T70] ( 2, 4 ) int -> x1 "Inlining Arg" +; V81 tmp60 [V81,T106] ( 4, 2 ) ref -> x25 class-hnd "Inline return value spill temp" <System.Reflection.ConstructorInfo[]> +; V82 tmp61 [V82,T77] ( 3, 3.43) ref -> x25 class-hnd exact single-def "dup spill" <System.Reflection.ConstructorInfo[]>
;* V83 tmp62 [V83 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" ;* V84 tmp63 [V84 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Reflection.ConstructorInfo[]>
-; V85 tmp64 [V85,T172] ( 3, 0.01) ref -> x25 class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.ConstructorInfo[]> -; V86 tmp65 [V86,T169] ( 2, 0.01) byref -> x0 single-def "impAppendStmt" -; V87 tmp66 [V87,T170] ( 2, 0.01) byref -> x1 single-def "impAppendStmt" -; V88 tmp67 [V88,T175] ( 2, 0.00) int -> x2 "Inline return value spill temp" -; V89 tmp68 [V89,T168] ( 3, 0.01) int -> x2 "Inlining Arg" -; V90 tmp69 [V90,T171] ( 2, 0.01) long -> x2 "Inlining Arg"
+; V85 tmp64 [V85,T174] ( 3, 0.01) ref -> x25 class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.ConstructorInfo[]> +; V86 tmp65 [V86,T171] ( 2, 0.01) byref -> x0 single-def "impAppendStmt" +; V87 tmp66 [V87,T172] ( 2, 0.01) byref -> x1 single-def "impAppendStmt" +; V88 tmp67 [V88,T177] ( 2, 0.00) int -> x2 "Inline return value spill temp" +; V89 tmp68 [V89,T170] ( 3, 0.01) int -> x2 "Inlining Arg" +; V90 tmp69 [V90,T173] ( 2, 0.01) long -> x2 "Inlining Arg"
;* V91 tmp70 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]> ;* V92 tmp71 [V92 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]>
-; V93 tmp72 [V93,T101] ( 2, 2.29) ref -> x1 class-hnd single-def "dup spill" <System.Reflection.ParameterInfo[]> -; V94 tmp73 [V94,T84] ( 6, 2.75) ref -> x1 -; V95 tmp74 [V95,T159] ( 3, 0.23) ref -> x1 class-hnd single-def "dup spill" <System.Reflection.ParameterInfo[]>
+; V93 tmp72 [V93,T102] ( 2, 2.29) ref -> x1 class-hnd single-def "dup spill" <System.Reflection.ParameterInfo[]> +; V94 tmp73 [V94,T85] ( 6, 2.75) ref -> x1 +; V95 tmp74 [V95,T160] ( 3, 0.23) ref -> x1 class-hnd single-def "dup spill" <System.Reflection.ParameterInfo[]>
;* V96 tmp75 [V96 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline stloc first use temp" <System.Reflection.ParameterInfo[]>
-; V97 tmp76 [V97,T161] ( 2, 0.15) ref -> x2 class-hnd exact single-def "dup spill" <System.Signature> -; V98 tmp77 [V98,T163] ( 4, 0.12) ref -> x2
+; V97 tmp76 [V97,T162] ( 2, 0.15) ref -> x2 class-hnd exact single-def "dup spill" <System.Signature> +; V98 tmp77 [V98,T164] ( 4, 0.12) ref -> x2
;* V99 tmp78 [V99 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]>
-; V100 tmp79 [V100,T130] ( 3, 1.14) ref -> x5 class-hnd "Inline return value spill temp" <System.Reflection.ParameterInfo[]> -; V101 tmp80 [V101,T139] ( 3, 0.98) ref -> x28 class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.ParameterInfo[]> -; V102 tmp81 [V102,T123] ( 3, 1.31) byref -> x0 single-def "Inlining Arg"
+; V100 tmp79 [V100,T131] ( 3, 1.14) ref -> x5 class-hnd "Inline return value spill temp" <System.Reflection.ParameterInfo[]> +; V101 tmp80 [V101,T140] ( 3, 0.98) ref -> x28 class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.ParameterInfo[]> +; V102 tmp81 [V102,T124] ( 3, 1.31) byref -> x0 single-def "Inlining Arg"
;* V103 tmp82 [V103 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-; V104 tmp83 [V104,T124] ( 2, 1.31) long -> x1 "Inlining Arg" -; V105 tmp84 [V105,T108] ( 4, 1.96) long -> x2 "Inlining Arg"
+; V104 tmp83 [V104,T125] ( 2, 1.31) long -> x1 "Inlining Arg" +; V105 tmp84 [V105,T109] ( 4, 1.96) long -> x2 "Inlining Arg"
;* V106 tmp85 [V106 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Type> ;* V107 tmp86 [V107 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Type>
-; V108 tmp87 [V108,T131] ( 3, 1 ) ref -> x2 class-hnd "spilling ret_expr" <System.Type> -; V109 tmp88 [V109,T206] ( 2, 0 ) ref -> x28 class-hnd exact single-def "non-inline candidate call" <System.String> -; V110 tmp89 [V110,T199] ( 3, 0 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <<unknown class>> -; V111 tmp90 [V111,T119] ( 4, 1.50) ref -> x1 "guarded devirt return temp"
+; V108 tmp87 [V108,T132] ( 3, 1 ) ref -> x2 class-hnd "spilling ret_expr" <System.Type> +; V109 tmp88 [V109,T208] ( 2, 0 ) ref -> x28 class-hnd exact single-def "non-inline candidate call" <System.String> +; V110 tmp89 [V110,T201] ( 3, 0 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <<unknown class>> +; V111 tmp90 [V111,T120] ( 4, 1.50) ref -> x1 "guarded devirt return temp"
;* V112 tmp91 [V112 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "guarded devirt this exact temp" <System.Reflection.RuntimeConstructorInfo>
-; V113 tmp92 [V113,T132] ( 3, 1 ) int -> x0 "guarded devirt return temp"
+; V113 tmp92 [V113,T133] ( 3, 1 ) int -> x0 "guarded devirt return temp"
;* V114 tmp93 [V114 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.RuntimeType> ;* V115 tmp94 [V115 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.RuntimeType+RuntimeTypeCache>
-; V116 tmp95 [V116,T113] ( 2, 1.71) ref -> x15 class-hnd exact single-def "Inlining Arg" <<unknown class>>
+; V116 tmp95 [V116,T114] ( 2, 1.71) ref -> x15 class-hnd exact single-def "Inlining Arg" <<unknown class>>
;* V117 tmp96 [V117 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[System.Reflection.ConstructorInfo]> ;* V118 tmp97 [V118 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.Span`1[System.Reflection.ConstructorInfo]>
-; V119 tmp98 [V119,T116] ( 2, 1.71) int -> x25 "Inlining Arg" -; V120 tmp99 [V120,T114] ( 2, 1.71) byref -> x22 single-def "Inlining Arg"
+; V119 tmp98 [V119,T117] ( 2, 1.71) int -> x25 "Inlining Arg" +; V120 tmp99 [V120,T115] ( 2, 1.71) byref -> x22 single-def "Inlining Arg"
;* V121 tmp100 [V121 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]> ;* V122 tmp101 [V122 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]> ; V123 tmp102 [V123,T63] ( 2, 4.57) ref -> x1 class-hnd "dup spill" <System.Reflection.ParameterInfo[]> ; V124 tmp103 [V124,T47] ( 6, 5.50) ref -> x1
-; V125 tmp104 [V125,T154] ( 3, 0.46) ref -> x1 class-hnd "dup spill" <System.Reflection.ParameterInfo[]>
+; V125 tmp104 [V125,T155] ( 3, 0.46) ref -> x1 class-hnd "dup spill" <System.Reflection.ParameterInfo[]>
;* V126 tmp105 [V126 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Reflection.ParameterInfo[]>
-; V127 tmp106 [V127,T156] ( 2, 0.31) ref -> x2 class-hnd exact "dup spill" <System.Signature> -; V128 tmp107 [V128,T158] ( 4, 0.23) ref -> x2
+; V127 tmp106 [V127,T157] ( 2, 0.31) ref -> x2 class-hnd exact "dup spill" <System.Signature> +; V128 tmp107 [V128,T159] ( 4, 0.23) ref -> x2
;* V129 tmp108 [V129 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[System.Reflection.ParameterInfo]>
-; V130 tmp109 [V130,T100] ( 3, 2.29) ref -> x27 class-hnd "Inline return value spill temp" <System.Reflection.ParameterInfo[]> -; V131 tmp110 [V131,T109] ( 3, 1.96) ref -> [fp+0xD0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Reflection.ParameterInfo[]> -; V132 tmp111 [V132,T87] ( 3, 2.61) byref -> x0 "Inlining Arg"
+; V130 tmp109 [V130,T101] ( 3, 2.29) ref -> x27 class-hnd "Inline return value spill temp" <System.Reflection.ParameterInfo[]> +; V131 tmp110 [V131,T110] ( 3, 1.96) ref -> [fp+0xD0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Reflection.ParameterInfo[]> +; V132 tmp111 [V132,T88] ( 3, 2.61) byref -> x0 "Inlining Arg"
;* V133 tmp112 [V133 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V134 tmp113 [V134,T88] ( 2, 2.61) long -> x1 "Inlining Arg" -; V135 tmp114 [V135,T71] ( 4, 3.92) long -> x2 "Inlining Arg" -; V136 tmp115 [V136,T86] ( 4, 2.71) ref -> x1 class-hnd "Inline return value spill temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]>
+; V134 tmp113 [V134,T89] ( 2, 2.61) long -> x1 "Inlining Arg" +; V135 tmp114 [V135,T72] ( 4, 3.92) long -> x2 "Inlining Arg" +; V136 tmp115 [V136,T87] ( 4, 2.71) ref -> x1 class-hnd "Inline return value spill temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]>
; V137 tmp116 [V137,T34] ( 6, 6.64) ref -> [fp+0xC8] class-hnd exact spill-single-def "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]> ; V138 tmp117 [V138,T05] ( 18, 18.12) int -> [fp+0x194] "Inline stloc first use temp" ; V139 tmp118 [V139,T08] ( 18, 16.05) ref -> [fp+0xC0] class-hnd "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite> ; V140 tmp119 [V140,T54] ( 14, 5.02) ref -> [fp+0xB8] class-hnd "Inline stloc first use temp" <System.Type> ; V141 tmp120 [V141,T48] ( 8, 5.47) ref -> [fp+0xB0] class-hnd "Inline stloc first use temp" <System.Object[]>
-; V142 tmp121 [V142,T75] ( 10, 3.48) int -> [fp+0x190] "Inline stloc first use temp" -; V143 tmp122 [V143,T152] ( 6, 0.50) ref -> [fp+0xA8] class-hnd "Inline stloc first use temp" <System.Object>
+; V142 tmp121 [V142,T76] ( 10, 3.48) int -> [fp+0x190] "Inline stloc first use temp" +; V143 tmp122 [V143,T153] ( 6, 0.50) ref -> [fp+0xA8] class-hnd "Inline stloc first use temp" <System.Object>
;* V144 tmp123 [V144 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
-; V145 tmp124 [V145,T153] ( 6, 0.50) ref -> x0 class-hnd "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.FromKeyedServicesAttribute>
+; V145 tmp124 [V145,T154] ( 6, 0.50) ref -> x0 class-hnd "Inline stloc first use temp" <Microsoft.Extensions.DependencyInjection.FromKeyedServicesAttribute>
;* V146 tmp125 [V146 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
-; V147 tmp126 [V147,T187] ( 6, 0 ) ref -> [fp+0xA0] class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite> -; V148 tmp127 [V148,T200] ( 3, 0 ) ref -> x19 class-hnd exact "NewObj constructor temp" <<unknown class>>
+; V147 tmp126 [V147,T189] ( 6, 0 ) ref -> [fp+0xA0] class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite> +; V148 tmp127 [V148,T202] ( 3, 0 ) ref -> x19 class-hnd exact "NewObj constructor temp" <<unknown class>>
; V149 tmp128 [V149 ] ( 6, 2.43) ref -> [fp+0x188] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Object>
-; V150 tmp129 [V150,T157] ( 6, 0.30) ref -> [fp+0x98] class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite>
+; V150 tmp129 [V150,T158] ( 6, 0.30) ref -> [fp+0x98] class-hnd exact "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstantCallSite>
;* V151 tmp130 [V151 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "spilled call-like call argument" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> ; V152 tmp131 [V152,T59] ( 4, 4.97) ref -> registers "guarded devirt return temp" ; V153 tmp132 [V153,T04] ( 22, 19.88) ref -> [fp+0x90] "guarded devirt arg temp" @@ -167,7 +167,7 @@ ; V155 tmp134 [V155,T56] ( 8, 4.97) ref -> registers "guarded devirt return temp" ; V156 tmp135 [V156,T00] ( 20,109.32) ref -> [fp+0x88] "guarded devirt arg temp" ;* V157 tmp136 [V157 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "guarded devirt this exact temp" <System.Reflection.RuntimeParameterInfo>
-; V158 tmp137 [V158,T178] ( 8, 0.00) ref -> [fp+0x80] class-hnd "Inline stloc first use temp" <System.RuntimeType>
+; V158 tmp137 [V158,T180] ( 8, 0.00) ref -> [fp+0x80] class-hnd "Inline stloc first use temp" <System.RuntimeType>
;* V159 tmp138 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Signature> ;* V160 tmp139 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Signature> ;* V161 tmp140 [V161 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" @@ -187,10 +187,10 @@ ;* V175 tmp154 [V175 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" <System.Reflection.RuntimePropertyInfo> ; V176 tmp155 [V176,T33] ( 12, 6.83) ref -> x2 class-hnd exact "Inline stloc first use temp" <System.Reflection.RuntimePropertyInfo> ;* V177 tmp156 [V177 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V178 tmp157 [V178,T188] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
+; V178 tmp157 [V178,T190] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V179 tmp158 [V179 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V180 tmp159 [V180 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V181 tmp160 [V181,T189] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
+; V181 tmp160 [V181,T191] ( 6, 0 ) ref -> x0 class-hnd exact "Inlining Arg" <System.RuntimeType>
; V182 tmp161 [V182,T23] ( 6, 8.77) int -> [fp+0x16C] "Inlining Arg" ;* V183 tmp162 [V183 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Object> ;* V184 tmp163 [V184 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier> @@ -198,12 +198,12 @@ ;* V186 tmp165 [V186 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey> ; V187 tmp166 [V187,T18] ( 4, 9.94) ref -> x10 class-hnd "impAppendStmt" <<unknown class>> ; V188 tmp167 [V188,T64] ( 6, 2.04) ref -> x6 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite>
-;* V189 tmp168 [V189,T78] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
...

Details

Improvements/regressions per collection

Collection Contexts with diffs Improvements Regressions Same size Improvements (bytes) Regressions (bytes)
benchmarks.run.osx.arm64.checked.mch 0 0 0 0 -0 +0
benchmarks.run_pgo.osx.arm64.checked.mch 0 0 0 0 -0 +0
benchmarks.run_tiered.osx.arm64.checked.mch 0 0 0 0 -0 +0
coreclr_tests.run.osx.arm64.checked.mch 1 0 1 0 -0 +16
libraries.crossgen2.osx.arm64.checked.mch 0 0 0 0 -0 +0
libraries.pmi.osx.arm64.checked.mch 0 0 0 0 -0 +0
libraries_tests.run.osx.arm64.Release.mch 2 1 1 0 -24 +12
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 0 0 0 0 -0 +0
realworld.run.osx.arm64.checked.mch 0 0 0 0 -0 +0
3 1 2 0 -24 +28

Context information

Collection Diffed contexts MinOpts FullOpts Missed, base Missed, diff
benchmarks.run.osx.arm64.checked.mch 24,866 4 24,862 0 (0.00%) 0 (0.00%)
benchmarks.run_pgo.osx.arm64.checked.mch 84,226 48,188 36,038 0 (0.00%) 13 (0.02%)
benchmarks.run_tiered.osx.arm64.checked.mch 48,311 37,361 10,950 0 (0.00%) 0 (0.00%)
coreclr_tests.run.osx.arm64.checked.mch 586,049 356,848 229,201 0 (0.00%) 5 (0.00%)
libraries.crossgen2.osx.arm64.checked.mch 1,870 0 1,870 0 (0.00%) 0 (0.00%)
libraries.pmi.osx.arm64.checked.mch 316,128 18 316,110 0 (0.00%) 0 (0.00%)
libraries_tests.run.osx.arm64.Release.mch 634,566 463,650 170,916 0 (0.00%) 83 (0.01%)
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 303,146 21,597 281,549 0 (0.00%) 0 (0.00%)
realworld.run.osx.arm64.checked.mch 31,546 3 31,543 0 (0.00%) 0 (0.00%)
2,030,708 927,669 1,103,039 0 (0.00%) 101 (0.00%)

jit-analyze output

coreclr_tests.run.osx.arm64.checked.mch

To reproduce these diffs on Windows x64: superpmi.py asmdiffs -target_os osx -target_arch arm64 -arch x64


Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 486149188 (overridden on cmd)
Total bytes of diff: 486149204 (overridden on cmd)
Total bytes of delta: 16 (0.00 % of base)
    diff is a regression.
    relative diff is a regression.

Detail diffs



Top file regressions (bytes):
          16 : 487270.dasm (0.58 % of base)

1 total files with Code Size differences (0 improved, 1 regressed), 0 unchanged.

Top method regressions (bytes):
          16 (0.58 % of base) : 487270.dasm - Program:TestEntryPoint() (FullOpts)

Top method regressions (percentages):
          16 (0.58 % of base) : 487270.dasm - Program:TestEntryPoint() (FullOpts)

1 total methods with Code Size differences (0 improved, 1 regressed).


libraries_tests.run.osx.arm64.Release.mch

To reproduce these diffs on Windows x64: superpmi.py asmdiffs -target_os osx -target_arch arm64 -arch x64


Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 313700352 (overridden on cmd)
Total bytes of diff: 313700340 (overridden on cmd)
Total bytes of delta: -12 (-0.00 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          12 : 125204.dasm (0.14 % of base)

Top file improvements (bytes):
         -24 : 125206.dasm (-0.51 % of base)

2 total files with Code Size differences (1 improved, 1 regressed), 0 unchanged.

Top method regressions (bytes):
          12 (0.14 % of base) : 125204.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateConstructorCallSite(Microsoft.Extensions.DependencyInjection.ServiceLookup.ResultCache,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain):Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite:this (Tier1)

Top method improvements (bytes):
         -24 (-0.51 % of base) : 125206.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateArgumentCallSites(Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain,System.Reflection.ParameterInfo[],ubyte):Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]:this (Tier1)

Top method regressions (percentages):
          12 (0.14 % of base) : 125204.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateConstructorCallSite(Microsoft.Extensions.DependencyInjection.ServiceLookup.ResultCache,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain):Microsoft.Extensions.DependencyInjection.ServiceLookup.ConstructorCallSite:this (Tier1)

Top method improvements (percentages):
         -24 (-0.51 % of base) : 125206.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteFactory:CreateArgumentCallSites(Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,System.Type,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain,System.Reflection.ParameterInfo[],ubyte):Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite[]:this (Tier1)

2 total methods with Code Size differences (1 improved, 1 regressed).