forked from MihaZupan/runtime-utils
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ARM64] xtqqczze/dotnet-runtime/WidenFourAsciiBytesToUtf16AndWriteToBuffer #389
Comments
Top method regressions80 (4.26 % of base) - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this ; Assembly listing for method System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 12 single block inlinees; 14 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T27] ( 4, 4 ) ref -> x20 this class-hnd single-def <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature>
-; V01 arg1 [V01,T28] ( 4, 4 ) ref -> x1 class-hnd single-def <System.Reflection.TypeInfo>
+; V00 this [V00,T26] ( 4, 4 ) ref -> x20 this class-hnd single-def <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature>
+; V01 arg1 [V01,T27] ( 4, 4 ) ref -> x1 class-hnd single-def <System.Reflection.TypeInfo>
; V02 arg2 [V02,T07] ( 6, 10 ) ref -> x19 class-hnd single-def <System.Composition.Hosting.Core.DependencyAccessor>
-; V03 loc0 [V03,T67] ( 3, 2.50) ref -> x20 class-hnd single-def <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo][]>
+; V03 loc0 [V03,T65] ( 3, 2.50) ref -> x20 class-hnd single-def <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo][]>
; V04 loc1 [V04,T00] ( 14, 25 ) ref -> x22 class-hnd exact single-def <System.Collections.Generic.List`1[System.Composition.Hosting.Core.CompositionDependency]>
-; V05 loc2 [V05,T45] ( 2, 4.50) ref -> x20 class-hnd exact single-def <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo][]>
-; V06 loc3 [V06,T02] ( 5, 16.50) int -> x25
-; V07 loc4 [V07,T11] ( 4, 12 ) ref -> x26 class-hnd exact <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]>
+; V05 loc2 [V05,T43] ( 2, 4.50) ref -> x20 class-hnd exact single-def <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo][]>
+; V06 loc3 [V06,T02] ( 5, 16.50) int -> x24
+; V07 loc4 [V07,T11] ( 4, 12 ) ref -> x25 class-hnd exact <<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]>
; V08 loc5 [V08,T14] ( 4, 8 ) ref -> x2 ld-addr-op class-hnd <System.Composition.Hosting.Core.CompositionDependency>
;# V09 OutArgs [V09 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V10 tmp1 [V10,T46] ( 2, 4 ) ref -> x23 class-hnd single-def "dup spill" <System.Func`2[System.Reflection.PropertyInfo,ubyte]>
-; V11 tmp2 [V11,T47] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[System.Reflection.PropertyInfo]>
+; V10 tmp1 [V10,T44] ( 2, 4 ) ref -> x22 class-hnd single-def "dup spill" <System.Func`2[System.Reflection.PropertyInfo,ubyte]>
+; V11 tmp2 [V11,T45] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[System.Reflection.PropertyInfo]>
;* V12 tmp3 [V12 ] ( 0, 0 ) ref -> zero-ref single-def
-; V13 tmp4 [V13,T58] ( 4, 3.50) ref -> x23
-; V14 tmp5 [V14,T16] ( 4, 8 ) ref -> x24 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Reflection.PropertyInfo,<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]]>
-; V15 tmp6 [V15,T48] ( 2, 4 ) ref -> x1 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[System.Reflection.PropertyInfo]>
-; V16 tmp7 [V16,T49] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
-; V17 tmp8 [V17,T50] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]]>
+; V13 tmp4 [V13,T56] ( 4, 3.50) ref -> x22
+; V14 tmp5 [V14,T15] ( 4, 8 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Reflection.PropertyInfo,<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]]>
+; V15 tmp6 [V15,T46] ( 2, 4 ) ref -> x1 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[System.Reflection.PropertyInfo]>
+; V16 tmp7 [V16,T47] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
+; V17 tmp8 [V17,T48] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]]>
;* V18 tmp9 [V18 ] ( 0, 0 ) ref -> zero-ref single-def
-; V19 tmp10 [V19,T59] ( 4, 3.50) ref -> x2
-; V20 tmp11 [V20,T51] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],ubyte]>
-; V21 tmp12 [V21,T52] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
+; V19 tmp10 [V19,T57] ( 4, 3.50) ref -> x2
+; V20 tmp11 [V20,T49] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],ubyte]>
+; V21 tmp12 [V21,T50] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
;* V22 tmp13 [V22 ] ( 0, 0 ) ref -> zero-ref single-def
-; V23 tmp14 [V23,T60] ( 4, 3.50) ref -> x2
-; V24 tmp15 [V24,T53] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]]>
-; V25 tmp16 [V25,T54] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
+; V23 tmp14 [V23,T58] ( 4, 3.50) ref -> x2
+; V24 tmp15 [V24,T51] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]]>
+; V25 tmp16 [V25,T52] ( 2, 4 ) ref -> x21 class-hnd single-def "impAppendStmt" <System.Collections.Generic.IEnumerable`1[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
;* V26 tmp17 [V26 ] ( 0, 0 ) ref -> zero-ref single-def
-; V27 tmp18 [V27,T61] ( 4, 3.50) ref -> x2
-; V28 tmp19 [V28,T62] ( 3, 3 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Composition.Hosting.Core.CompositionDependency]>
-; V29 tmp20 [V29,T13] ( 3, 12 ) ref -> x26 class-hnd exact "impAppendStmt" <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
-; V30 tmp21 [V30,T03] ( 4, 16 ) ref -> x26 class-hnd exact "impAppendStmt" <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
-; V31 tmp22 [V31,T39] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]]>
-; V32 tmp23 [V32,T40] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],ubyte]>
-; V33 tmp24 [V33,T41] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
-; V34 tmp25 [V34,T42] ( 5, 5 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Reflection.PropertyInfo,ubyte]>
-; V35 tmp26 [V35,T63] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
-; V36 tmp27 [V36,T64] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
-; V37 tmp28 [V37,T65] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
-; V38 tmp29 [V38,T66] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
+; V27 tmp18 [V27,T59] ( 4, 3.50) ref -> x2
+; V28 tmp19 [V28,T60] ( 3, 3 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Composition.Hosting.Core.CompositionDependency]>
+; V29 tmp20 [V29,T13] ( 3, 12 ) ref -> x25 class-hnd exact "impAppendStmt" <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
+; V30 tmp21 [V30,T03] ( 4, 16 ) ref -> x25 class-hnd exact "impAppendStmt" <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
+; V31 tmp22 [V31,T38] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]]>
+; V32 tmp23 [V32,T39] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite],ubyte]>
+; V33 tmp24 [V33,T40] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]]>
+; V34 tmp25 [V34,T41] ( 5, 5 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Reflection.PropertyInfo,ubyte]>
+; V35 tmp26 [V35,T61] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
+; V36 tmp27 [V36,T62] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
+; V37 tmp28 [V37,T63] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
+; V38 tmp29 [V38,T64] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c>
;* V39 tmp30 [V39 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
;* V40 tmp31 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-; V41 tmp32 [V41,T17] ( 4, 8 ) ref -> x2 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.CompositionDependency>
-; V42 tmp33 [V42,T01] ( 5, 20 ) ref -> x27 class-hnd exact "Inlining Arg" <System.Composition.Hosting.Core.CompositionContract>
-; V43 tmp34 [V43,T18] ( 3, 6 ) ref -> x2 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Composition.Hosting.Core.CompositionDependency>
-;* V44 tmp35 [V44,T56] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V41 tmp32 [V41,T16] ( 4, 8 ) ref -> x2 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.CompositionDependency>
+; V42 tmp33 [V42,T01] ( 5, 20 ) ref -> x26 class-hnd exact "Inlining Arg" <System.Composition.Hosting.Core.CompositionContract>
+; V43 tmp34 [V43,T17] ( 3, 6 ) ref -> x2 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Composition.Hosting.Core.CompositionDependency>
+;* V44 tmp35 [V44,T54] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V45 tmp36 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
; V46 tmp37 [V46,T08] ( 6, 12 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V47 tmp38 [V47,T04] ( 4, 16 ) ref -> x28 class-hnd "Inlining Arg" <System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V48 tmp39 [V48,T19] ( 4, 8 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Linq.Enumerable+Iterator`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V49 tmp40 [V49,T20] ( 4, 8 ) ref -> [fp+0x28] class-hnd spill-single-def "Inline stloc first use temp" <System.Collections.Generic.ICollection`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V50 tmp41 [V50,T29] ( 3, 6 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V51 tmp42 [V51,T35] ( 3, 6 ) int -> x0 "Inline stloc first use temp"
-; V52 tmp43 [V52,T30] ( 3, 6 ) ref -> [fp+0x20] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V53 tmp44 [V53,T31] ( 3, 6 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.CompositionDependency[]>
-; V54 tmp45 [V54,T23] ( 4, 8 ) int -> x26 "Inline stloc first use temp"
+; V47 tmp38 [V47,T04] ( 4, 16 ) ref -> x27 class-hnd "Inlining Arg" <System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V48 tmp39 [V48,T18] ( 4, 8 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Linq.Enumerable+Iterator`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V49 tmp40 [V49,T19] ( 4, 8 ) ref -> x28 class-hnd "Inline stloc first use temp" <System.Collections.Generic.ICollection`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V50 tmp41 [V50,T28] ( 3, 6 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
+; V51 tmp42 [V51,T34] ( 3, 6 ) int -> x0 "Inline stloc first use temp"
+; V52 tmp43 [V52,T29] ( 3, 6 ) ref -> [fp+0x18] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
+; V53 tmp44 [V53,T30] ( 3, 6 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.CompositionDependency[]>
+; V54 tmp45 [V54,T22] ( 4, 8 ) int -> x25 "Inline stloc first use temp"
;* V55 tmp46 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
-;* V56 tmp47 [V56,T57] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V57 tmp48 [V57,T05] ( 4, 16 ) ref -> x27 class-hnd exact "Inlining Arg" <System.Composition.Hosting.Core.CompositionContract>
+;* V56 tmp47 [V56,T55] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V57 tmp48 [V57,T05] ( 4, 16 ) ref -> x26 class-hnd exact "Inlining Arg" <System.Composition.Hosting.Core.CompositionContract>
;* V58 tmp49 [V58 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
; V59 tmp50 [V59,T09] ( 6, 12 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V60 tmp51 [V60,T06] ( 4, 16 ) ref -> x28 class-hnd "Inlining Arg" <System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V61 tmp52 [V61,T21] ( 4, 8 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Linq.Enumerable+Iterator`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V62 tmp53 [V62,T22] ( 4, 8 ) ref -> [fp+0x18] class-hnd spill-single-def "Inline stloc first use temp" <System.Collections.Generic.ICollection`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
-; V63 tmp54 [V63,T32] ( 3, 6 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V64 tmp55 [V64,T36] ( 3, 6 ) int -> x0 "Inline stloc first use temp"
-; V65 tmp56 [V65,T33] ( 3, 6 ) ref -> [fp+0x10] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
-; V66 tmp57 [V66,T34] ( 3, 6 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.CompositionDependency[]>
-; V67 tmp58 [V67,T24] ( 4, 8 ) int -> x26 "Inline stloc first use temp"
+; V60 tmp51 [V60,T06] ( 4, 16 ) ref -> x27 class-hnd "Inlining Arg" <System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V61 tmp52 [V61,T20] ( 4, 8 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Linq.Enumerable+Iterator`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V62 tmp53 [V62,T21] ( 4, 8 ) ref -> x28 class-hnd "Inline stloc first use temp" <System.Collections.Generic.ICollection`1[System.Composition.Hosting.Core.ExportDescriptorPromise]>
+; V63 tmp54 [V63,T31] ( 3, 6 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
+; V64 tmp55 [V64,T35] ( 3, 6 ) int -> x0 "Inline stloc first use temp"
+; V65 tmp56 [V65,T32] ( 3, 6 ) ref -> [fp+0x10] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Composition.Hosting.Core.ExportDescriptorPromise[]>
+; V66 tmp57 [V66,T33] ( 3, 6 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Composition.Hosting.Core.CompositionDependency[]>
+; V67 tmp58 [V67,T23] ( 4, 8 ) int -> x25 "Inline stloc first use temp"
;* V68 tmp59 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Composition.Hosting.Core.CompositionDependency>
-; V69 tmp60 [V69,T55] ( 2, 4 ) ref -> x1 single-def "argument with side effect"
-;* V70 cse0 [V70,T68] ( 0, 0 ) long -> zero-ref "CSE #02: aggressive"
-; V71 cse1 [V71,T26] ( 4, 6.50) int -> x21 "CSE #06: moderate"
-; V72 cse2 [V72,T12] ( 4, 12 ) ref -> x27 "CSE #07: aggressive"
-; V73 cse3 [V73,T15] ( 14, 9.50) long -> x22 "CSE #03: aggressive"
-; V74 cse4 [V74,T25] ( 9, 7.50) long -> x20 "CSE #04: moderate"
-; V75 cse5 [V75,T43] ( 4, 5 ) long -> x23 "CSE #09: moderate"
-; V76 cse6 [V76,T44] ( 4, 5 ) long -> x24 "CSE #10: moderate"
-; V77 cse7 [V77,T37] ( 3, 6 ) int -> x0 "CSE #12: moderate"
-; V78 cse8 [V78,T38] ( 3, 6 ) int -> x0 "CSE #19: moderate"
-; V79 cse9 [V79,T10] ( 6, 12 ) long -> x28 multi-def "CSE #08: aggressive"
+; V69 tmp60 [V69,T53] ( 2, 4 ) ref -> x1 single-def "argument with side effect"
+;* V70 cse0 [V70,T66] ( 0, 0 ) long -> zero-ref "CSE #02: aggressive"
+; V71 cse1 [V71,T25] ( 4, 6.50) int -> x21 "CSE #06: moderate"
+; V72 cse2 [V72,T12] ( 4, 12 ) ref -> x26 "CSE #07: aggressive"
+; V73 cse3 [V73,T24] ( 9, 7.50) long -> x20 "CSE #04: moderate"
+; V74 cse4 [V74,T42] ( 4, 5 ) long -> x23 "CSE #09: moderate"
+; V75 cse5 [V75,T36] ( 3, 6 ) int -> x0 "CSE #12: moderate"
+; V76 cse6 [V76,T37] ( 3, 6 ) int -> x0 "CSE #19: moderate"
+; V77 cse7 [V77,T10] ( 6, 12 ) long -> x27 multi-def "CSE #08: aggressive"
;
-; Lcl frame size = 32
+; Lcl frame size = 16
G_M2524_IG01:
- stp fp, lr, [sp, #-0x80]!
- stp x19, x20, [sp, #0x30]
- stp x21, x22, [sp, #0x40]
- stp x23, x24, [sp, #0x50]
- stp x25, x26, [sp, #0x60]
- stp x27, x28, [sp, #0x70]
+ stp fp, lr, [sp, #-0x70]!
+ stp x19, x20, [sp, #0x20]
+ stp x21, x22, [sp, #0x30]
+ stp x23, x24, [sp, #0x40]
+ stp x25, x26, [sp, #0x50]
+ stp x27, x28, [sp, #0x60]
mov fp, sp
mov x20, x0
mov x19, x2
;; size=36 bbWeight=1 PerfScore 7.50
G_M2524_IG02:
mov x0, x1
ldr x1, [x1]
ldr x1, [x1, #0xB0]
ldr x1, [x1, #0x30]
blr x1
movz x1, #0xD1FFAB1E // code for System.Reflection.RuntimeReflectionExtensions:GetRuntimeProperties(System.Type):System.Collections.Generic.IEnumerable`1[System.Reflection.PropertyInfo]
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
mov x21, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr w0, [x0]
tbz w0, #0, G_M2524_IG39
;; size=64 bbWeight=1 PerfScore 22.00
G_M2524_IG03:
- movz x22, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_0
- movk x22, #0xD1FFAB1E LSL #16
- movk x22, #0xD1FFAB1E LSL #32
- ldr x23, [x22]
- cbnz x23, G_M2524_IG05
- ;; size=20 bbWeight=1 PerfScore 5.50
+ movz x0, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_0
+ movk x0, #0xD1FFAB1E LSL #32
+ ldr x22, [x0]
+ cbnz x22, G_M2524_IG05
+ ;; size=16 bbWeight=1 PerfScore 5.00
G_M2524_IG04:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
- mov x23, x0
- ldr x15, [x22, #-0x08]
+ mov x22, x0
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9
+ movk x14, #0xD1FFAB1E LSL #32
+ ldr x15, [x14]
cbz x15, G_M2524_IG40
- add x14, x23, #8
+ add x14, x22, #8
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E // code for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<GetDependencies>b__3_0(System.Reflection.PropertyInfo):ubyte:this
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
- str x14, [x23, #0x18]
- mov x14, x22
- mov x15, x23
+ str x14, [x22, #0x18]
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_0
+ movk x14, #0xD1FFAB1E LSL #32
+ mov x15, x22
bl CORINFO_HELP_ASSIGN_REF
- ;; size=64 bbWeight=0.50 PerfScore 6.50
+ ;; size=76 bbWeight=0.50 PerfScore 7.25
G_M2524_IG05:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
- mov x24, x0
- mov x2, x23
+ mov x23, x0
+ mov x2, x22
mov x1, x21
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Where[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,ubyte]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x1, x0
cbz x20, G_M2524_IG40
- add x14, x24, #8
+ add x14, x23, #8
mov x15, x20
bl CORINFO_HELP_ASSIGN_REF
movz x2, #0xD1FFAB1E // code for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:<GetDependencies>b__3_1(System.Reflection.PropertyInfo):<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]:this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
- str x2, [x24, #0x18]
- mov x2, x24
+ str x2, [x23, #0x18]
+ mov x2, x23
movz x20, #0xD1FFAB1E
movk x20, #0xD1FFAB1E LSL #16
movk x20, #0xD1FFAB1E LSL #32
mov x0, x20
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Select[System.__Canon,System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,System.__Canon]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x21, x0
- ldr x2, [x22, #0x08]
+ movz x0, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_2
+ movk x0, #0xD1FFAB1E LSL #32
+ ldr x2, [x0]
cbnz x2, G_M2524_IG07
- ;; size=148 bbWeight=1 PerfScore 29.50
+ ;; size=156 bbWeight=1 PerfScore 30.50
G_M2524_IG06:
add x0, x20, #0xD1FFAB1E
bl CORINFO_HELP_NEWSFAST
mov x2, x0
- ldr x15, [x22, #-0x08]
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9
+ movk x14, #0xD1FFAB1E LSL #32
+ ldr x15, [x14]
cbz x15, G_M2524_IG40
add x14, x2, #8
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E // code for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<GetDependencies>b__3_2(<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]]):<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]:this
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
str x14, [x2, #0x18]
- add x14, x22, #8
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_2
+ movk x14, #0xD1FFAB1E LSL #32
mov x15, x2
bl CORINFO_HELP_ASSIGN_REF
- ;; size=56 bbWeight=0.50 PerfScore 6.00
+ ;; size=68 bbWeight=0.50 PerfScore 6.75
G_M2524_IG07:
mov x1, x21
add x0, x20, #0xD1FFAB1E
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Select[System.__Canon,System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,System.__Canon]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x21, x0
- ldr x2, [x22, #0x18]
+ movz x0, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_3
+ movk x0, #0xD1FFAB1E LSL #32
+ ldr x2, [x0]
cbnz x2, G_M2524_IG09
- ;; size=40 bbWeight=1 PerfScore 11.00
+ ;; size=48 bbWeight=1 PerfScore 12.00
G_M2524_IG08:
add x0, x20, #0xD1FFAB1E
bl CORINFO_HELP_NEWSFAST
mov x2, x0
- ldr x15, [x22, #-0x08]
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9
+ movk x14, #0xD1FFAB1E LSL #32
+ ldr x15, [x14]
cbz x15, G_M2524_IG40
add x14, x2, #8
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E // code for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<GetDependencies>b__3_3(<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]):ubyte:this
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
str x14, [x2, #0x18]
- add x14, x22, #24
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_3
+ movk x14, #0xD1FFAB1E LSL #32
mov x15, x2
bl CORINFO_HELP_ASSIGN_REF
- ;; size=56 bbWeight=0.50 PerfScore 6.00
+ ;; size=68 bbWeight=0.50 PerfScore 6.75
G_M2524_IG09:
mov x1, x21
add x0, x20, #0xD1FFAB1E
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Where[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,ubyte]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x21, x0
- ldr x2, [x22, #0x20]
+ movz x0, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_4
+ movk x0, #0xD1FFAB1E LSL #32
+ ldr x2, [x0]
cbnz x2, G_M2524_IG11
- ;; size=40 bbWeight=1 PerfScore 11.00
+ ;; size=48 bbWeight=1 PerfScore 12.00
G_M2524_IG10:
add x0, x20, #0xD1FFAB1E
bl CORINFO_HELP_NEWSFAST
mov x2, x0
- ldr x15, [x22, #-0x08]
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9
+ movk x14, #0xD1FFAB1E LSL #32
+ ldr x15, [x14]
cbz x15, G_M2524_IG40
add x14, x2, #8
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E // code for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<GetDependencies>b__3_4(<>f__AnonymousType1`2[<>f__AnonymousType0`2[System.Reflection.PropertyInfo,System.Attribute[]],System.Composition.TypedParts.ActivationFeatures.PropertyImportSite]):<>f__AnonymousType2`2[System.Composition.TypedParts.ActivationFeatures.PropertyImportSite,System.Composition.TypedParts.ImportInfo]:this
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
str x14, [x2, #0x18]
- add x14, x22, #32
+ movz x14, #0xD1FFAB1E // data for System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:<>9__3_4
+ movk x14, #0xD1FFAB1E LSL #32
mov x15, x2
bl CORINFO_HELP_ASSIGN_REF
- ;; size=56 bbWeight=0.50 PerfScore 6.00
+ ;; size=68 bbWeight=0.50 PerfScore 6.75
G_M2524_IG11:
mov x1, x21
add x0, x20, #0xD1FFAB1E
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Select[System.__Canon,System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,System.__Canon]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x1, x0
add x0, x20, #0xD1FFAB1E
movz x2, #0xD1FFAB1E // code for System.Linq.Enumerable:ToArray[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon]):System.__Canon[]
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x20, x0
ldr w21, [x20, #0x08]
cbz w21, G_M2524_IG37
;; size=68 bbWeight=1 PerfScore 17.50
G_M2524_IG12:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x22, x0
movz x23, #0xD1FFAB1E
movk x23, #0xD1FFAB1E LSL #16
movk x23, #0xD1FFAB1E LSL #32
mov x0, x23
mov w1, #57
bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
- movz x24, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Composition.Hosting.Core.CompositionDependency]:s_emptyArray
- movk x24, #0xD1FFAB1E LSL #16
- movk x24, #0xD1FFAB1E LSL #32
- ldr x15, [x24]
+ movz x14, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Composition.Hosting.Core.CompositionDependency]:s_emptyArray
+ movk x14, #0xD1FFAB1E LSL #32
+ ldr x15, [x14]
add x14, x22, #8
bl CORINFO_HELP_ASSIGN_REF
- mov w25, wzr
+ mov w24, wzr
cmp w21, #0
ble G_M2524_IG35
- ;; size=80 bbWeight=0.50 PerfScore 7.25
+ ;; size=76 bbWeight=0.50 PerfScore 7.00
G_M2524_IG13:
add x0, x20, #16
- ldr x26, [x0, w25, UXTW #3]
- ldr x27, [x26, #0x10]
- ldrb w0, [x27, #0x10]
+ ldr x25, [x0, w24, UXTW #3]
+ ldr x26, [x25, #0x10]
+ ldrb w0, [x26, #0x10]
cbz w0, G_M2524_IG23
;; size=20 bbWeight=4 PerfScore 42.00
G_M2524_IG14:
+ ldr x25, [x25, #0x08]
ldr x26, [x26, #0x08]
- ldr x27, [x27, #0x08]
mov x0, x19
- mov x1, x27
+ mov x1, x26
ldr x2, [x19]
ldr x2, [x2, #0x40]
ldr x2, [x2, #0x20]
blr x2
- mov x28, x0
- mov x1, x28
+ mov x27, x0
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFCLASS
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
cbnz x0, G_M2524_IG18
- mov x1, x28
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFINTERFACE
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
- mov x2, x0
- str x2, [fp, #0x18] // [V62 tmp53]
- cbnz x2, G_M2524_IG15
- mov x1, x28
+ mov x28, x0
+ cbnz x28, G_M2524_IG15
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for System.Linq.Enumerable:<ToArray>g__EnumerableToArray|314_0[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon]):System.__Canon[]
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x1, x0
b G_M2524_IG19
- ;; size=168 bbWeight=2 PerfScore 90.00
+ ;; size=164 bbWeight=2 PerfScore 88.00
G_M2524_IG15:
- mov x0, x2
- movz x28, #0xD1FFAB1E
- movk x28, #0xD1FFAB1E LSL #16
- movk x28, #0xD1FFAB1E LSL #32
- add x11, x28, #16
+ mov x0, x28
+ movz x27, #0xD1FFAB1E
+ movk x27, #0xD1FFAB1E LSL #16
+ movk x27, #0xD1FFAB1E LSL #32
+ add x11, x27, #16
ldr xip0, [x11]
blr xip0
cbnz w0, G_M2524_IG16
mov x0, x23
mov w1, #63
bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
- ldr x1, [x24, #0x08]
+ movz x1, #0xD1FFAB1E // data for System.Array+EmptyArray`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:Value
+ movk x1, #0xD1FFAB1E LSL #32
+ ldr x1, [x1]
b G_M2524_IG17
- ;; size=52 bbWeight=2 PerfScore 27.00
+ ;; size=60 bbWeight=2 PerfScore 29.00
G_M2524_IG16:
sxtw x1, w0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWARR_1_OBJ
mov x1, x0
str x1, [fp, #0x10] // [V65 tmp56]
- ldr x0, [fp, #0x18] // [V62 tmp53]
- add x11, x28, #24
+ mov x0, x28
+ add x11, x27, #24
mov w2, wzr
ldr xip0, [x11]
blr xip0
- ldr x28, [fp, #0x10] // [V65 tmp56]
- mov x1, x28
- ;; size=56 bbWeight=2 PerfScore 28.00
+ ldr x27, [fp, #0x10] // [V65 tmp56]
+ mov x1, x27
+ ;; size=56 bbWeight=2 PerfScore 25.00
G_M2524_IG17:
b G_M2524_IG19
;; size=4 bbWeight=2 PerfScore 2.00
G_M2524_IG18:
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x20]
blr x1
mov x1, x0
;; size=20 bbWeight=2 PerfScore 21.00
G_M2524_IG19:
ldr w0, [x1, #0x08]
cbz w0, G_M2524_IG34
cmp w0, #1
bne G_M2524_IG20
ldr x1, [x1, #0x10]
- mov x0, x27
- mov x3, x26
+ mov x0, x26
+ mov x3, x25
mov w2, wzr
movz x4, #0xD1FFAB1E // code for System.Composition.Hosting.Core.CompositionDependency:Satisfied(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.ExportDescriptorPromise,ubyte,System.Object):System.Composition.Hosting.Core.CompositionDependency
movk x4, #0xD1FFAB1E LSL #16
movk x4, #0xD1FFAB1E LSL #32
ldr x4, [x4]
blr x4
mov x2, x0
b G_M2524_IG21
;; size=60 bbWeight=2 PerfScore 34.00
G_M2524_IG20:
- mov x0, x27
- mov x2, x26
+ mov x0, x26
+ mov x2, x25
movz x3, #0xD1FFAB1E // code for System.Composition.Hosting.Core.CompositionDependency:Oversupplied(System.Composition.Hosting.Core.CompositionContract,System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise],System.Object):System.Composition.Hosting.Core.CompositionDependency
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x2, x0
;; size=32 bbWeight=2 PerfScore 14.00
G_M2524_IG21:
- ldp w26, w0, [x22, #0x10]
+ ldp w25, w0, [x22, #0x10]
add w0, w0, #1
str w0, [x22, #0x14]
ldr x0, [x22, #0x08]
ldr w1, [x0, #0x08]
- cmp w1, w26
+ cmp w1, w25
bhi G_M2524_IG22
mov x0, x22
mov x1, x2
movz x2, #0xD1FFAB1E // code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
b G_M2524_IG34
;; size=60 bbWeight=2 PerfScore 39.00
G_M2524_IG22:
- add w1, w26, #1
+ add w1, w25, #1
str w1, [x22, #0x10]
- sxtw x1, w26
+ sxtw x1, w25
movz x3, #0xD1FFAB1E // code for CORINFO_HELP_ARRADDR_ST
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
b G_M2524_IG34
;; size=36 bbWeight=2 PerfScore 17.00
G_M2524_IG23:
+ ldr x25, [x25, #0x08]
ldr x26, [x26, #0x08]
- ldr x27, [x27, #0x08]
mov x0, x19
- mov x1, x27
+ mov x1, x26
ldr x2, [x19]
ldr x2, [x2, #0x40]
ldr x2, [x2, #0x20]
blr x2
- mov x28, x0
- mov x1, x28
+ mov x27, x0
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFCLASS
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
cbnz x0, G_M2524_IG27
- mov x1, x28
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFINTERFACE
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
- mov x2, x0
- str x2, [fp, #0x28] // [V49 tmp40]
- cbnz x2, G_M2524_IG24
- mov x1, x28
+ mov x28, x0
+ cbnz x28, G_M2524_IG24
+ mov x1, x27
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for System.Linq.Enumerable:<ToArray>g__EnumerableToArray|314_0[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon]):System.__Canon[]
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x1, x0
b G_M2524_IG28
- ;; size=168 bbWeight=2 PerfScore 90.00
+ ;; size=164 bbWeight=2 PerfScore 88.00
G_M2524_IG24:
- mov x0, x2
- movz x28, #0xD1FFAB1E // code for System.Collections.Generic.ICollection`1[System.__Canon]:get_Count():int:this
- movk x28, #0xD1FFAB1E LSL #16
- movk x28, #0xD1FFAB1E LSL #32
- mov x11, x28
+ mov x0, x28
+ movz x27, #0xD1FFAB1E // code for System.Collections.Generic.ICollection`1[System.__Canon]:get_Count():int:this
+ movk x27, #0xD1FFAB1E LSL #16
+ movk x27, #0xD1FFAB1E LSL #32
+ mov x11, x27
ldr xip0, [x11]
blr xip0
cbnz w0, G_M2524_IG25
mov x0, x23
mov w1, #63
bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
- ldr x1, [x24, #0x08]
+ movz x1, #0xD1FFAB1E // data for System.Array+EmptyArray`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:Value
+ movk x1, #0xD1FFAB1E LSL #32
+ ldr x1, [x1]
b G_M2524_IG26
- ;; size=52 bbWeight=2 PerfScore 27.00
+ ;; size=60 bbWeight=2 PerfScore 29.00
G_M2524_IG25:
sxtw x1, w0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWARR_1_OBJ
mov x1, x0
- str x1, [fp, #0x20] // [V52 tmp43]
- ldr x0, [fp, #0x28] // [V49 tmp40]
- add x11, x28, #8
+ str x1, [fp, #0x18] // [V52 tmp43]
+ mov x0, x28
+ add x11, x27, #8
mov w2, wzr
ldr xip0, [x11]
blr xip0
- ldr x28, [fp, #0x20] // [V52 tmp43]
- mov x1, x28
- ;; size=56 bbWeight=2 PerfScore 28.00
+ ldr x27, [fp, #0x18] // [V52 tmp43]
+ mov x1, x27
+ ;; size=56 bbWeight=2 PerfScore 25.00
G_M2524_IG26:
b G_M2524_IG28
;; size=4 bbWeight=2 PerfScore 2.00
G_M2524_IG27:
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x20]
blr x1
mov x1, x0
;; size=20 bbWeight=2 PerfScore 21.00
G_M2524_IG28:
ldr w0, [x1, #0x08]
cbz w0, G_M2524_IG31
cmp w0, #1
bne G_M2524_IG29
ldr x1, [x1, #0x10]
- mov x0, x27
- mov x3, x26
+ mov x0, x26
+ mov x3, x25
mov w2, wzr
movz x4, #0xD1FFAB1E // code for System.Composition.Hosting.Core.CompositionDependency:Satisfied(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.ExportDescriptorPromise,ubyte,System.Object):System.Composition.Hosting.Core.CompositionDependency
movk x4, #0xD1FFAB1E LSL #16
movk x4, #0xD1FFAB1E LSL #32
ldr x4, [x4]
blr x4
mov x2, x0
b G_M2524_IG30
;; size=60 bbWeight=2 PerfScore 34.00
G_M2524_IG29:
- mov x0, x27
- mov x2, x26
+ mov x0, x26
+ mov x2, x25
movz x3, #0xD1FFAB1E // code for System.Composition.Hosting.Core.CompositionDependency:Oversupplied(System.Composition.Hosting.Core.CompositionContract,System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise],System.Object):System.Composition.Hosting.Core.CompositionDependency
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x2, x0
;; size=32 bbWeight=2 PerfScore 14.00
G_M2524_IG30:
b G_M2524_IG32
;; size=4 bbWeight=2 PerfScore 2.00
G_M2524_IG31:
- mov x0, x27
- mov x1, x26
+ mov x0, x26
+ mov x1, x25
movz x2, #0xD1FFAB1E // code for System.Composition.Hosting.Core.CompositionDependency:Missing(System.Composition.Hosting.Core.CompositionContract,System.Object):System.Composition.Hosting.Core.CompositionDependency
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x2, x0
;; size=32 bbWeight=2 PerfScore 14.00
G_M2524_IG32:
- ldp w26, w0, [x22, #0x10]
+ ldp w25, w0, [x22, #0x10]
add w0, w0, #1
str w0, [x22, #0x14]
ldr x0, [x22, #0x08]
ldr w1, [x0, #0x08]
- cmp w1, w26
+ cmp w1, w25
bhi G_M2524_IG33
mov x0, x22
mov x1, x2
movz x2, #0xD1FFAB1E // code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
b G_M2524_IG34
;; size=60 bbWeight=2 PerfScore 39.00
G_M2524_IG33:
- add w1, w26, #1
+ add w1, w25, #1
str w1, [x22, #0x10]
- sxtw x1, w26
+ sxtw x1, w25
movz x3, #0xD1FFAB1E // code for CORINFO_HELP_ARRADDR_ST
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
;; size=32 bbWeight=2 PerfScore 15.00
G_M2524_IG34:
- add w25, w25, #1
- cmp w21, w25
+ add w24, w24, #1
+ cmp w21, w24
bgt G_M2524_IG13
;; size=12 bbWeight=4 PerfScore 8.00
G_M2524_IG35:
mov x0, x22
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M2524_IG36:
- ldp x27, x28, [sp, #0x70]
- ldp x25, x26, [sp, #0x60]
- ldp x23, x24, [sp, #0x50]
- ldp x21, x22, [sp, #0x40]
- ldp x19, x20, [sp, #0x30]
- ldp fp, lr, [sp], #0x80
+ ldp x27, x28, [sp, #0x60]
+ ldp x25, x26, [sp, #0x50]
+ ldp x23, x24, [sp, #0x40]
+ ldp x21, x22, [sp, #0x30]
+ ldp x19, x20, [sp, #0x20]
+ ldp fp, lr, [sp], #0x70
ret lr
;; size=28 bbWeight=0.50 PerfScore 3.50
G_M2524_IG37:
- ldr x0, [x22, #-0xA0]
- ;; size=4 bbWeight=0.50 PerfScore 1.50
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #32
+ ldr x0, [x0]
+ ;; size=12 bbWeight=0.50 PerfScore 2.00
G_M2524_IG38:
- ldp x27, x28, [sp, #0x70]
- ldp x25, x26, [sp, #0x60]
- ldp x23, x24, [sp, #0x50]
- ldp x21, x22, [sp, #0x40]
- ldp x19, x20, [sp, #0x30]
- ldp fp, lr, [sp], #0x80
+ ldp x27, x28, [sp, #0x60]
+ ldp x25, x26, [sp, #0x50]
+ ldp x23, x24, [sp, #0x40]
+ ldp x21, x22, [sp, #0x30]
+ ldp x19, x20, [sp, #0x20]
+ ldp fp, lr, [sp], #0x70
ret lr
;; size=28 bbWeight=0.50 PerfScore 3.50
G_M2524_IG39:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov w1, #57
bl CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
b G_M2524_IG03
;; size=24 bbWeight=0 PerfScore 0.00
G_M2524_IG40:
movz x0, #0xD1FFAB1E // code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
blr x0
brk_unix #0
;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1880, prolog size 28, PerfScore 752.50, instruction count 470, allocated bytes for code 1880 (MethodHash=1b0ff623) for method System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this (FullOpts)
+; Total bytes of code 1960, prolog size 28, PerfScore 752.25, instruction count 490, allocated bytes for code 1960 (MethodHash=1b0ff623) for method System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this (FullOpts) Note: some changes were skipped as they were too large to fit into a comment. Larger list of diffs: https://gist.github.com/MihuBot/4d14ebad1a9bcda735ff873366e91f9f |
Top method improvements-24 (-1.20 % of base) - System.Composition.CompositionContextExtensions:SatisfyImportsInternal(System.Composition.CompositionContext,System.Object,System.Composition.Convention.AttributedModelProvider) ; Assembly listing for method System.Composition.CompositionContextExtensions:SatisfyImportsInternal(System.Composition.CompositionContext,System.Object,System.Composition.Convention.AttributedModelProvider) (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 14 single block inlinees; 7 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T14] ( 5, 7 ) ref -> x21 class-hnd single-def <System.Composition.CompositionContext>
; V01 arg1 [V01,T09] ( 7, 10 ) ref -> x20 class-hnd single-def <System.Object>
; V02 arg2 [V02,T08] ( 5, 11 ) ref -> x19 class-hnd single-def <System.Composition.Convention.AttributedModelProvider>
; V03 loc0 [V03,T11] ( 7, 10 ) ref -> [fp+0x20] class-hnd EH-live spill-single-def <System.Collections.Generic.IEnumerator`1[System.Reflection.PropertyInfo]>
; V04 loc1 [V04,T01] ( 8, 26 ) ref -> x24 class-hnd <System.Reflection.PropertyInfo>
; V05 loc2 [V05 ] ( 3, 8 ) ref -> [fp+0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Composition.TypedParts.ImportInfo>
;* V06 loc3 [V06 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
;* V07 loc4 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Attribute[]>
; V08 loc5 [V08 ] ( 2, 4 ) ref -> [fp+0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object>
; V09 loc6 [V09,T12] ( 7, 10 ) ref -> [fp+0x18] class-hnd EH-live spill-single-def <System.Collections.Generic.IEnumerator`1[System.Reflection.MethodInfo]>
;# V10 OutArgs [V10 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V11 tmp1 [V11,T03] ( 3, 24 ) ref -> x25 class-hnd exact "NewObj constructor temp" <System.Composition.TypedParts.ActivationFeatures.PropertyImportSite>
; V12 tmp2 [V12,T05] ( 2, 16 ) ref -> x27 class-hnd "non-inline candidate call" <System.Type>
; V13 tmp3 [V13,T40] ( 2, 0 ) ref -> x19 class-hnd exact "non-inline candidate call" <System.String>
; V14 tmp4 [V14,T36] ( 3, 0 ) ref -> x23 class-hnd exact "NewObj constructor temp" <System.Composition.Hosting.CompositionFailedException>
; V15 tmp5 [V15,T23] ( 2, 4 ) ref -> x2 class-hnd single-def "dup spill" <System.Func`2[System.Reflection.MethodInfo,ubyte]>
;* V16 tmp6 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "impAppendStmt" <System.Reflection.MethodInfo[]>
;* V17 tmp7 [V17 ] ( 0, 0 ) ref -> zero-ref single-def
; V18 tmp8 [V18,T27] ( 4, 3.50) ref -> x2
; V19 tmp9 [V19,T22] ( 5, 5 ) ref -> x2 class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Reflection.MethodInfo,ubyte]>
; V20 tmp10 [V20,T37] ( 3, 0 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
; V21 tmp11 [V21,T38] ( 3, 0 ) ref -> x19 class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
; V22 tmp12 [V22,T39] ( 3, 0 ) ref -> x19 class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
; V23 tmp13 [V23,T24] ( 2, 4 ) ref -> x0 class-hnd exact single-def "Inlining Arg" <System.RuntimeType>
; V24 tmp14 [V24 ] ( 9, 5.50) struct (24) [fp+0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.RuntimeType+ListBuilder`1[System.Reflection.PropertyInfo]>
; V25 tmp15 [V25,T32] ( 4, 2.50) ref -> x0 class-hnd "Inline return value spill temp" <System.Reflection.PropertyInfo[]>
; V26 tmp16 [V26,T28] ( 3, 3 ) ref -> x23 class-hnd exact single-def "dup spill" <System.Reflection.PropertyInfo[]>
;* V27 tmp17 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Type>
; V28 tmp18 [V28,T13] ( 4, 10 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Attribute[]>
; V29 tmp19 [V29,T02] ( 4, 24 ) ref -> x28 class-hnd "Inlining Arg" <System.Collections.Generic.IEnumerable`1[System.Attribute]>
; V30 tmp20 [V30,T10] ( 4, 12 ) ref -> x0 class-hnd "Inline stloc first use temp" <System.Linq.Enumerable+Iterator`1[System.Attribute]>
; V31 tmp21 [V31,T15] ( 4, 8 ) ref -> [fp+0x10] class-hnd spill-single-def "Inline stloc first use temp" <System.Collections.Generic.ICollection`1[System.Attribute]>
; V32 tmp22 [V32,T19] ( 3, 6 ) ref -> x1 class-hnd "Inline return value spill temp" <System.Attribute[]>
; V33 tmp23 [V33,T21] ( 3, 6 ) int -> x0 "Inline stloc first use temp"
; V34 tmp24 [V34,T20] ( 3, 6 ) ref -> x28 class-hnd exact "Inline stloc first use temp" <System.Attribute[]>
; V35 tmp25 [V35,T16] ( 2, 8 ) ref -> x1 class-hnd exact "Inlining Arg" <System.Composition.TypedParts.ImportInfo>
; V36 tmp26 [V36,T17] ( 2, 8 ) ref -> x2 class-hnd "Inlining Arg" <System.Object>
; V37 tmp27 [V37,T18] ( 2, 8 ) ref -> x0 class-hnd exact "Inlining Arg" <System.Composition.TypedParts.ImportInfo>
; V38 tmp28 [V38,T25] ( 2, 4 ) ref -> x0 class-hnd exact single-def "Inlining Arg" <System.RuntimeType>
; V39 tmp29 [V39 ] ( 9, 5.50) struct (24) [fp+0x28] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.RuntimeType+ListBuilder`1[System.Reflection.MethodInfo]>
; V40 tmp30 [V40,T33] ( 4, 2.50) ref -> x19 class-hnd "Inline return value spill temp" <System.Reflection.MethodInfo[]>
; V41 tmp31 [V41,T29] ( 3, 3 ) ref -> x19 class-hnd exact single-def "dup spill" <System.Reflection.MethodInfo[]>
; V42 tmp32 [V42,T30] ( 3, 3 ) ref -> x15 class-hnd exact single-def "Inlining Arg" <System.Composition.CompositionContextExtensions+<>c>
;* V43 tmp33 [V43 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.__Canon>
; V44 tmp34 [V44 ] ( 3, 2 ) ref -> [fp+0x40] do-not-enreg[X] addr-exposed "field V24._items (fldOffset=0x0)" P-DEP
; V45 tmp35 [V45 ] ( 2, 1.50) ref -> [fp+0x48] do-not-enreg[X] addr-exposed "field V24._item (fldOffset=0x8)" P-DEP
; V46 tmp36 [V46 ] ( 5, 3.50) int -> [fp+0x50] do-not-enreg[X] addr-exposed "field V24._count (fldOffset=0x10)" P-DEP
; V47 tmp37 [V47 ] ( 2, 1.50) int -> [fp+0x54] do-not-enreg[X] addr-exposed "field V24._capacity (fldOffset=0x14)" P-DEP
; V48 tmp38 [V48 ] ( 3, 2 ) ref -> [fp+0x28] do-not-enreg[X] addr-exposed "field V39._items (fldOffset=0x0)" P-DEP
; V49 tmp39 [V49 ] ( 2, 1.50) ref -> [fp+0x30] do-not-enreg[X] addr-exposed "field V39._item (fldOffset=0x8)" P-DEP
; V50 tmp40 [V50 ] ( 5, 3.50) int -> [fp+0x38] do-not-enreg[X] addr-exposed "field V39._count (fldOffset=0x10)" P-DEP
; V51 tmp41 [V51 ] ( 2, 1.50) int -> [fp+0x3C] do-not-enreg[X] addr-exposed "field V39._capacity (fldOffset=0x14)" P-DEP
; V52 tmp42 [V52,T06] ( 2, 16 ) ref -> x1 "argument with side effect"
; V53 tmp43 [V53,T41] ( 2, 0 ) ref -> x1 "argument with side effect"
; V54 tmp44 [V54,T42] ( 2, 0 ) ref -> x1 "argument with side effect"
; V55 tmp45 [V55,T26] ( 2, 4 ) ref -> x0 single-def "argument with side effect"
; V56 tmp46 [V56,T04] ( 3, 24 ) ref -> x0 "argument with side effect"
; V57 tmp47 [V57,T43] ( 2, 0 ) ref -> x1 single-def "argument with side effect"
; V58 tmp48 [V58,T44] ( 2, 0 ) ref -> x1 single-def "argument with side effect"
; V59 tmp49 [V59,T45] ( 2, 0 ) ref -> x1 single-def "argument with side effect"
; V60 PSPSym [V60,T34] ( 1, 1 ) long -> [fp+0x68] do-not-enreg[V] "PSPSym"
; V61 cse0 [V61,T31] ( 3, 3 ) ref -> x22 "CSE #09: moderate"
;* V62 cse1 [V62,T35] ( 0, 0 ) long -> zero-ref "CSE #10: moderate"
; V63 cse2 [V63,T00] ( 17, 27 ) long -> x23 multi-def "CSE #03: aggressive"
; V64 cse3 [V64,T07] ( 5, 14 ) long -> x26 "CSE #04: aggressive"
;
; Lcl frame size = 96
G_M6457_IG01:
stp fp, lr, [sp, #-0xC0]!
stp x19, x20, [sp, #0x70]
stp x21, x22, [sp, #0x80]
stp x23, x24, [sp, #0x90]
stp x25, x26, [sp, #0xA0]
stp x27, x28, [sp, #0xB0]
mov fp, sp
add x9, fp, #40
movi v16.16b, #0
stp q16, q16, [x9]
stp q16, q16, [x9, #0x20]
add x3, sp, #192
str x3, [fp, #0x68] // [V60 PSPSym]
mov x21, x0
mov x20, x1
mov x19, x2
;; size=64 bbWeight=1 PerfScore 12.50
G_M6457_IG02:
cbz x21, G_M6457_IG35
cbz x20, G_M6457_IG34
cbz x19, G_M6457_IG33
mov x0, x20
bl System.Object:GetType():System.Type:this
mov x22, x0
add x8, fp, #64 // [V24 tmp14]
mov x1, xzr
mov w2, #60
mov x3, xzr
mov w4, wzr
movz x5, #0xD1FFAB1E // code for System.RuntimeType:GetPropertyCandidates(System.String,int,System.Type[],ubyte):System.RuntimeType+ListBuilder`1[System.Reflection.PropertyInfo]:this
movk x5, #0xD1FFAB1E LSL #16
movk x5, #0xD1FFAB1E LSL #32
ldr x5, [x5]
blr x5
ldr w1, [fp, #0x50] // [V46 tmp36]
cbz w1, G_M6457_IG05
;; size=72 bbWeight=1 PerfScore 16.00
G_M6457_IG03:
ldr w1, [fp, #0x50] // [V46 tmp36]
cmp w1, #1
beq G_M6457_IG04
add x1, fp, #64 // [V44 tmp34]
ldr w2, [fp, #0x50] // [V46 tmp36]
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x3, #0xD1FFAB1E // code for System.Array:Resize[System.__Canon](byref,int)
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
ldr w0, [fp, #0x50] // [V46 tmp36]
str w0, [fp, #0x54] // [V47 tmp37]
ldr x0, [fp, #0x40] // [V44 tmp34]
b G_M6457_IG06
;; size=68 bbWeight=0.50 PerfScore 9.50
G_M6457_IG04:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov x1, #1
bl CORINFO_HELP_NEWARR_1_OBJ
mov x23, x0
ldr x2, [fp, #0x48] // [V45 tmp35]
mov x1, xzr
movz x3, #0xD1FFAB1E // code for CORINFO_HELP_ARRADDR_ST
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x0, x23
b G_M6457_IG06
;; size=60 bbWeight=0.50 PerfScore 6.50
G_M6457_IG05:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov w1, #50
bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
movz x0, #0xD1FFAB1E // data for System.Array+EmptyArray`1[System.Reflection.PropertyInfo]:Value
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
- ;; size=36 bbWeight=0.50 PerfScore 3.75
+ ;; size=32 bbWeight=0.50 PerfScore 3.50
G_M6457_IG06:
movz x23, #0xD1FFAB1E // code for System.Collections.Generic.IEnumerable`1[System.__Canon]:GetEnumerator():System.Collections.Generic.IEnumerator`1[System.__Canon]:this
movk x23, #0xD1FFAB1E LSL #16
movk x23, #0xD1FFAB1E LSL #32
mov x11, x23
ldr xip0, [x11]
blr xip0
str x0, [fp, #0x20] // [V03 loc0]
;; size=28 bbWeight=1 PerfScore 7.00
G_M6457_IG07:
add x11, x23, #8
ldr xip0, [x11]
blr xip0
cbz w0, G_M6457_IG19
;; size=16 bbWeight=1 PerfScore 5.50
G_M6457_IG08:
ldr x0, [fp, #0x20] // [V03 loc0]
add x11, x23, #16
ldr xip0, [x11]
blr xip0
mov x24, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x25, x0
add x14, x25, #8
mov x15, x24
bl CORINFO_HELP_ASSIGN_REF
mov x0, x24
ldr x26, [x24]
ldr x1, [x26, #0x50]
ldr x1, [x1, #0x10]
blr x1
mov x27, x0
mov x0, x24
ldr x1, [x26, #0x40]
ldr x1, [x1, #0x38]
blr x1
mov x1, x0
mov x0, x19
mov x2, x24
ldr x3, [x19]
ldr x3, [x3, #0x40]
ldr x3, [x3, #0x20]
blr x3
mov x28, x0
mov x1, x28
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFCLASS
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
cbnz x0, G_M6457_IG13
;; size=164 bbWeight=4 PerfScore 204.00
G_M6457_IG09:
mov x1, x28
movz x0, #144
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for CORINFO_HELP_ISINSTANCEOFINTERFACE
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x2, x0
str x2, [fp, #0x10] // [V31 tmp21]
cbnz x2, G_M6457_IG10
mov x1, x28
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x2, #0xD1FFAB1E // code for System.Linq.Enumerable:<ToArray>g__EnumerableToArray|314_0[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon]):System.__Canon[]
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x1, x0
b G_M6457_IG14
;; size=92 bbWeight=2 PerfScore 38.00
G_M6457_IG10:
mov x0, x2
add x11, x23, #64
ldr xip0, [x11]
blr xip0
cbnz w0, G_M6457_IG11
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov w1, #51
bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
movz x1, #0xD1FFAB1E // data for System.Array+EmptyArray`1[System.Attribute]:Value
- movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
b G_M6457_IG12
- ;; size=60 bbWeight=2 PerfScore 29.00
+ ;; size=56 bbWeight=2 PerfScore 28.00
G_M6457_IG11:
sxtw x1, w0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWARR_1_OBJ
mov x28, x0
ldr x0, [fp, #0x10] // [V31 tmp21]
mov x1, x28
add x11, x23, #72
mov w2, wzr
ldr xip0, [x11]
blr xip0
mov x1, x28
;; size=52 bbWeight=2 PerfScore 23.00
G_M6457_IG12:
b G_M6457_IG14
;; size=4 bbWeight=2 PerfScore 2.00
G_M6457_IG13:
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x20]
blr x1
mov x1, x0
;; size=20 bbWeight=2 PerfScore 21.00
G_M6457_IG14:
add x3, fp, #96 // [V05 loc2]
mov x0, x27
mov x2, x25
movz x4, #0xD1FFAB1E // code for System.Composition.TypedParts.ContractHelpers:TryGetExplicitImportInfo(System.Type,System.Object[],System.Object,byref):ubyte
movk x4, #0xD1FFAB1E LSL #16
movk x4, #0xD1FFAB1E LSL #32
ldr x4, [x4]
blr x4
cbz w0, G_M6457_IG17
;; size=36 bbWeight=4 PerfScore 32.00
G_M6457_IG15:
ldr x1, [fp, #0x60] // [V05 loc2]
ldr x1, [x1, #0x08]
add x2, fp, #88 // [V08 loc5]
mov x0, x21
ldr x3, [x21]
ldr x3, [x3, #0x40]
ldr x3, [x3, #0x20]
blr x3
cbnz w0, G_M6457_IG16
ldr x0, [fp, #0x60] // [V05 loc2]
ldrb w0, [x0, #0x10]
cbnz w0, G_M6457_IG17
b G_M6457_IG18
;; size=52 bbWeight=2 PerfScore 48.00
G_M6457_IG16:
ldr x2, [fp, #0x58] // [V08 loc5]
mov x0, x24
mov x1, x20
mov x3, xzr
ldr x4, [x26, #0x60]
ldr x4, [x4, #0x18]
blr x4
;; size=28 bbWeight=2 PerfScore 21.00
G_M6457_IG17:
ldr x0, [fp, #0x20] // [V03 loc0]
add x11, x23, #8
ldr xip0, [x11]
blr xip0
cbnz w0, G_M6457_IG08
b G_M6457_IG19
;; size=24 bbWeight=4 PerfScore 34.00
G_M6457_IG18:
movz x0, #0xD1FFAB1E // code for System.SR:get_CompositionContextExtensions_MissingDependency():System.String
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
blr x0
mov x19, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x23, x0
mov x0, x24
ldr x1, [x26, #0x40]
ldr x1, [x1, #0x30]
blr x1
mov x1, x0
mov x0, x19
mov x2, x20
movz x3, #0xD1FFAB1E // code for System.SR:Format(System.String,System.Object,System.Object):System.String
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
mov x1, x0
mov x0, x23
movz x2, #0xD1FFAB1E // code for System.Composition.Hosting.CompositionFailedException:.ctor(System.String):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x0, x23
bl CORINFO_HELP_THROW
brk_unix #0
;; size=132 bbWeight=0 PerfScore 0.00
G_M6457_IG19:
ldr x0, [fp, #0x20] // [V03 loc0]
add x11, x23, #56
ldr xip0, [x11]
blr xip0
mov x0, x22
add x8, fp, #40 // [V39 tmp29]
mov x1, xzr
movn w2, #0
mov w3, #60
mov w4, #3
mov x5, xzr
mov w6, wzr
movz x7, #0xD1FFAB1E // code for System.RuntimeType:GetMethodCandidates(System.String,int,int,int,System.Type[],ubyte):System.RuntimeType+ListBuilder`1[System.Reflection.MethodInfo]:this
movk x7, #0xD1FFAB1E LSL #16
movk x7, #0xD1FFAB1E LSL #32
ldr x7, [x7]
blr x7
ldr w1, [fp, #0x38] // [V50 tmp40]
cbz w1, G_M6457_IG22
;; size=76 bbWeight=1 PerfScore 19.00
G_M6457_IG20:
ldr w1, [fp, #0x38] // [V50 tmp40]
cmp w1, #1
beq G_M6457_IG21
add x1, fp, #40 // [V48 tmp38]
ldr w2, [fp, #0x38] // [V50 tmp40]
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x3, #0xD1FFAB1E // code for System.Array:Resize[System.__Canon](byref,int)
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
ldr w0, [fp, #0x38] // [V50 tmp40]
str w0, [fp, #0x3C] // [V51 tmp41]
ldr x19, [fp, #0x28] // [V48 tmp38]
b G_M6457_IG23
;; size=68 bbWeight=0.50 PerfScore 9.50
G_M6457_IG21:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov x1, #1
bl CORINFO_HELP_NEWARR_1_OBJ
mov x19, x0
ldr x2, [fp, #0x30] // [V49 tmp39]
mov x1, xzr
movz x3, #0xD1FFAB1E // code for CORINFO_HELP_ARRADDR_ST
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
b G_M6457_IG23
;; size=56 bbWeight=0.50 PerfScore 6.25
G_M6457_IG22:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x19, [x0]
- ;; size=16 bbWeight=0.50 PerfScore 2.25
+ ;; size=12 bbWeight=0.50 PerfScore 2.00
G_M6457_IG23:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr w0, [x0]
tbz w0, #0, G_M6457_IG31
;; size=20 bbWeight=1 PerfScore 5.50
G_M6457_IG24:
movz x0, #0xD1FFAB1E // data for System.Composition.CompositionContextExtensions+<>c:<>9__3_0
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x2, [x0]
cbnz x2, G_M6457_IG26
- ;; size=20 bbWeight=1 PerfScore 5.50
+ ;; size=16 bbWeight=1 PerfScore 5.00
G_M6457_IG25:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x2, x0
movz x14, #0xD1FFAB1E // data for System.Composition.CompositionContextExtensions+<>c:<>9
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
cbz x15, G_M6457_IG32
add x14, x2, #8
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E // code for System.Composition.CompositionContextExtensions+<>c:<SatisfyImportsInternal>b__3_0(System.Reflection.MethodInfo):ubyte:this
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
str x14, [x2, #0x18]
movz x14, #0xD1FFAB1E // data for System.Composition.CompositionContextExtensions+<>c:<>9__3_0
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
mov x15, x2
bl CORINFO_HELP_ASSIGN_REF
- ;; size=84 bbWeight=0.50 PerfScore 7.75
+ ;; size=76 bbWeight=0.50 PerfScore 7.25
G_M6457_IG26:
mov x1, x19
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
movz x3, #0xD1FFAB1E // code for System.Linq.Enumerable:Where[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,ubyte]):System.Collections.Generic.IEnumerable`1[System.__Canon]
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
add x11, x23, #24
ldr xip0, [x11]
blr xip0
str x0, [fp, #0x18] // [V09 loc6]
;; size=52 bbWeight=1 PerfScore 13.00
G_M6457_IG27:
add x11, x23, #32
ldr xip0, [x11]
blr xip0
cbz w0, G_M6457_IG29
;; size=16 bbWeight=1 PerfScore 5.50
G_M6457_IG28:
ldr x0, [fp, #0x18] // [V09 loc6]
add x11, x23, #40
ldr xip0, [x11]
blr xip0
mov x1, x20
mov w2, wzr
mov x3, xzr
mov x4, xzr
mov x5, xzr
ldr x6, [x0]
ldr x6, [x6, #0x58]
ldr x6, [x6, #0x30]
blr x6
ldr x0, [fp, #0x18] // [V09 loc6]
add x11, x23, #32
ldr xip0, [x11]
blr xip0
cbnz w0, G_M6457_IG28
;; size=72 bbWeight=4 PerfScore 106.00
G_M6457_IG29:
ldr x0, [fp, #0x18] // [V09 loc6]
add x11, x23, #48
ldr xip0, [x11]
blr xip0
;; size=16 bbWeight=1 PerfScore 6.50
G_M6457_IG30:
ldp x27, x28, [sp, #0xB0]
ldp x25, x26, [sp, #0xA0]
ldp x23, x24, [sp, #0x90]
ldp x21, x22, [sp, #0x80]
ldp x19, x20, [sp, #0x70]
ldp fp, lr, [sp], #0xC0
ret lr
;; size=28 bbWeight=1 PerfScore 7.00
G_M6457_IG31:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
mov w1, #34
bl CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
b G_M6457_IG24
;; size=24 bbWeight=0 PerfScore 0.00
G_M6457_IG32:
movz x0, #0xD1FFAB1E // code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
blr x0
brk_unix #0
;; size=24 bbWeight=0 PerfScore 0.00
G_M6457_IG33:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x23, x0
mov w0, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_STRCNS
mov x1, x0
mov x0, x23
movz x2, #0xD1FFAB1E // code for System.ArgumentNullException:.ctor(System.String):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x0, x23
bl CORINFO_HELP_THROW
brk_unix #0
;; size=80 bbWeight=0 PerfScore 0.00
G_M6457_IG34:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x19, x0
mov w0, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_STRCNS
mov x1, x0
mov x0, x19
movz x2, #0xD1FFAB1E // code for System.ArgumentNullException:.ctor(System.String):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x0, x19
bl CORINFO_HELP_THROW
brk_unix #0
;; size=80 bbWeight=0 PerfScore 0.00
G_M6457_IG35:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x19, x0
mov w0, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_STRCNS
mov x1, x0
mov x0, x19
movz x2, #0xD1FFAB1E // code for System.ArgumentNullException:.ctor(System.String):this
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x0, x19
bl CORINFO_HELP_THROW
brk_unix #0
;; size=80 bbWeight=0 PerfScore 0.00
G_M6457_IG36:
stp fp, lr, [sp, #-0x70]!
stp x19, x20, [sp, #0x20]
stp x21, x22, [sp, #0x30]
stp x23, x24, [sp, #0x40]
stp x25, x26, [sp, #0x50]
stp x27, x28, [sp, #0x60]
add x3, fp, #192
str x3, [sp, #0x18]
;; size=32 bbWeight=0 PerfScore 0.00
G_M6457_IG37:
ldr x0, [fp, #0x20] // [V03 loc0]
cbz x0, G_M6457_IG38
movz x23, #0xD1FFAB1E
movk x23, #0xD1FFAB1E LSL #16
movk x23, #0xD1FFAB1E LSL #32
add x11, x23, #56
ldr xip0, [x11]
blr xip0
;; size=32 bbWeight=0 PerfScore 0.00
G_M6457_IG38:
ldp x27, x28, [sp, #0x60]
ldp x25, x26, [sp, #0x50]
ldp x23, x24, [sp, #0x40]
ldp x21, x22, [sp, #0x30]
ldp x19, x20, [sp, #0x20]
ldp fp, lr, [sp], #0x70
ret lr
;; size=28 bbWeight=0 PerfScore 0.00
G_M6457_IG39:
stp fp, lr, [sp, #-0x70]!
stp x19, x20, [sp, #0x20]
stp x21, x22, [sp, #0x30]
stp x23, x24, [sp, #0x40]
stp x25, x26, [sp, #0x50]
stp x27, x28, [sp, #0x60]
add x3, fp, #192
str x3, [sp, #0x18]
;; size=32 bbWeight=0 PerfScore 0.00
G_M6457_IG40:
ldr x0, [fp, #0x18] // [V09 loc6]
cbz x0, G_M6457_IG41
movz x23, #0xD1FFAB1E
movk x23, #0xD1FFAB1E LSL #16
movk x23, #0xD1FFAB1E LSL #32
add x11, x23, #48
ldr xip0, [x11]
blr xip0
;; size=32 bbWeight=0 PerfScore 0.00
G_M6457_IG41:
ldp x27, x28, [sp, #0x60]
ldp x25, x26, [sp, #0x50]
ldp x23, x24, [sp, #0x40]
ldp x21, x22, [sp, #0x30]
ldp x19, x20, [sp, #0x20]
ldp fp, lr, [sp], #0x70
ret lr
;; size=28 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2004, prolog size 64, PerfScore 706.50, instruction count 501, allocated bytes for code 2004 (MethodHash=2134e6c6) for method System.Composition.CompositionContextExtensions:SatisfyImportsInternal(System.Composition.CompositionContext,System.Object,System.Composition.Convention.AttributedModelProvider) (FullOpts)
+; Total bytes of code 1980, prolog size 64, PerfScore 704.00, instruction count 495, allocated bytes for code 1980 (MethodHash=2134e6c6) for method System.Composition.CompositionContextExtensions:SatisfyImportsInternal(System.Composition.CompositionContext,System.Object,System.Composition.Convention.AttributedModelProvider) (FullOpts) Note: some changes were skipped as they were too large to fit into a comment. Larger list of diffs: https://gist.github.com/MihuBot/5d681c7ca6ec6cb20b655c650f6536f2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Job completed in 31 minutes.
Diffs
Diffs
Artifacts:
The text was updated successfully, but these errors were encountered: