Assembly Diffs

osx arm64

Diffs are based on 2,293,437 contexts (933,876 MinOpts, 1,359,561 FullOpts).

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

Overall (-193,772 bytes)

Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 11,256,032 -884
benchmarks.run_pgo.osx.arm64.checked.mch 34,290,048 -880
benchmarks.run_tiered.osx.arm64.checked.mch 15,676,392 -136
coreclr_tests.run.osx.arm64.checked.mch 491,746,024 -161,096
libraries.pmi.osx.arm64.checked.mch 81,113,832 -7,696
libraries_tests.run.osx.arm64.Release.mch 313,602,060 -10,064
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 161,383,428 -9,660
realworld.run.osx.arm64.checked.mch 15,058,504 -3,356

FullOpts (-193,772 bytes)

Collection Base size (bytes) Diff size (bytes)
benchmarks.run.osx.arm64.checked.mch 11,255,496 -884
benchmarks.run_pgo.osx.arm64.checked.mch 17,918,744 -880
benchmarks.run_tiered.osx.arm64.checked.mch 4,041,912 -136
coreclr_tests.run.osx.arm64.checked.mch 153,251,180 -161,096
libraries.pmi.osx.arm64.checked.mch 80,992,704 -7,696
libraries_tests.run.osx.arm64.Release.mch 110,669,088 -10,064
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 148,335,340 -9,660
realworld.run.osx.arm64.checked.mch 14,501,608 -3,356

Example diffs

benchmarks.run.osx.arm64.checked.mch

-12 (-21.43%) : 12391.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)

@@ -41,20 +41,17 @@ G_M31553_IG02: ; bbWeight=1, gcrefRegs=0021 {x0 x5}, byrefRegs=0000 {}, b cset x4, ne ldp x1, x2, [fp, #0x10] // [V01 arg1], [V01 arg1+0x08] ; gcrRegs +[x1]
- ldr xzr, [x0] - movz x6, #0xD1FFAB1E - movk x6, #0xD1FFAB1E LSL #16 - movk x6, #1 LSL #32
+ ldr x6, [x0] + ldr x6, [x6, #0x58]
ldr x6, [x6]
- ldr x6, [x6] - ;; size=36 bbWeight=1 PerfScore 14.50
+ ;; size=24 bbWeight=1 PerfScore 13.00
G_M31553_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x20 br x6 ; gcr arg pop 0 ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 56, prolog size 12, PerfScore 19.00, instruction count 14, allocated bytes for code 56 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
+; Total bytes of code 44, prolog size 12, PerfScore 17.50, instruction count 11, allocated bytes for code 44 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
; ============================================================ Unwind Info: @@ -65,7 +62,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 11 (0x0000b) Actual length = 44 (0x00002c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-12 (-16.67%) : 6727.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)

@@ -12,8 +12,8 @@ ;* V01 tmp1 [V01 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Nullable`1[ubyte]> ;* V02 tmp2 [V02,T02] ( 0, 0 ) ubyte -> zero-ref "field V01.hasValue (fldOffset=0x0)" P-INDEP ;* V03 tmp3 [V03,T03] ( 0, 0 ) ubyte -> zero-ref "field V01.value (fldOffset=0x1)" P-INDEP
-; V04 cse0 [V04,T00] ( 2, 2 ) byref -> x0 "CSE - aggressive" -; V05 cse1 [V05,T01] ( 2, 1 ) long -> x0 "CSE - moderate"
+; V04 cse0 [V04,T00] ( 3, 3 ) byref -> x0 "CSE - aggressive" +; V05 cse1 [V05,T01] ( 2, 1 ) long -> x1 "CSE - moderate"
; ; Lcl frame size = 0 @@ -25,28 +25,27 @@ G_M5950_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32
- ldrb w0, [x0] - cbnz w0, G_M5950_IG04
+ ldrb w1, [x0] + cbnz w1, G_M5950_IG04
;; size=20 bbWeight=1 PerfScore 5.50
-G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E // data for <unknown class>:<unknown field> - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - mov w1, #0xD1FFAB1E - strh w1, [x0]
+G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ; byrRegs +[x0] + movz x1, #0xD1FFAB1E // data for <unknown class>:<unknown field> + movk x1, #0xD1FFAB1E LSL #16 + movk x1, #1 LSL #32 + mov w2, #0xD1FFAB1E + strh w2, [x1]
;; size=20 bbWeight=0.50 PerfScore 1.50
-G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w0, [x0] - ;; size=16 bbWeight=1 PerfScore 4.50
+G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ldrb w0, [x0, #0x01] + ; byrRegs -[x0] + ;; size=4 bbWeight=1 PerfScore 3.00
G_M5950_IG05: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 72, prolog size 8, PerfScore 15.00, instruction count 18, allocated bytes for code 72 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
+; Total bytes of code 60, prolog size 8, PerfScore 13.50, instruction count 15, allocated bytes for code 60 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +56,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 18 (0x00012) Actual length = 72 (0x000048)
+ Function Length : 15 (0x0000f) Actual length = 60 (0x00003c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-14.29%) : 9492.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)

@@ -7,9 +7,9 @@ ; No matching PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Net.SafeDeleteSslContext>
+; V00 this [V00,T01] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Net.SafeDeleteSslContext>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V02 tmp1 [V02,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -33,19 +33,17 @@ G_M62171_IG04: ; bbWeight=0.50, epilog, nogc, extend ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M62171_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x20]
- ;; size=20 bbWeight=0.50 PerfScore 3.75
+ ;; size=12 bbWeight=0.50 PerfScore 4.50
G_M62171_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 56, prolog size 8, PerfScore 11.50, instruction count 14, allocated bytes for code 56 (MethodHash=a01f0d24) for method System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)
+; Total bytes of code 48, prolog size 8, PerfScore 12.25, instruction count 12, allocated bytes for code 48 (MethodHash=a01f0d24) for method System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)
; ============================================================ Unwind Info: @@ -56,7 +54,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+36 (+1.10%) : 7882.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonReader:.cctor() (FullOpts)

@@ -158,12 +158,13 @@ G_M7842_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32
- ldr x21, [x1]
+ ldr x1, [x1] + ldr x21, [x1, #0x60]
ldr x1, [x21, #0x18] blr x1 sxtw w22, w0 cbz w22, G_M7842_IG04
- ;; size=88 bbWeight=1 PerfScore 20.00
+ ;; size=92 bbWeight=1 PerfScore 23.00
G_M7842_IG03: ; bbWeight=0.50, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref ; gcrRegs -[x20] movz x0, #0xD1FFAB1E @@ -173,12 +174,13 @@ G_M7842_IG03: ; bbWeight=0.50, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x20, x0 ; gcrRegs +[x20]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG04: ; bbWeight=1, gcrefRegs=180000 {x19 x20}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x20 @@ -337,12 +339,13 @@ G_M7842_IG05: ; bbWeight=0.50, gcrefRegs=4180000 {x19 x20 x26}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG06: ; bbWeight=1, gcrefRegs=C180000 {x19 x20 x26 x27}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x27 @@ -482,12 +485,13 @@ G_M7842_IG07: ; bbWeight=0.50, gcrefRegs=4180000 {x19 x20 x26}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG08: ; bbWeight=1, gcrefRegs=C180000 {x19 x20 x26 x27}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x27 @@ -535,13 +539,14 @@ G_M7842_IG09: ; bbWeight=0.50, gcrefRegs=C180000 {x19 x20 x26 x27}, byref movk x2, #0xD1FFAB1E LSL #16 movk x2, #1 LSL #32 ldr x2, [x2]
+ ldr x2, [x2, #0x70]
ldr x2, [x2, #0x08] blr x2 ; gcrRegs +[x0] mov x28, x0 ; gcrRegs +[x28] ldr w1, [fp, #0x4C] // [V45 tmp43]
- ;; size=44 bbWeight=0.50 PerfScore 6.25
+ ;; size=48 bbWeight=0.50 PerfScore 7.75
G_M7842_IG10: ; bbWeight=1, gcrefRegs=1C180000 {x19 x20 x26 x27 x28}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x28 @@ -709,12 +714,13 @@ G_M7842_IG11: ; bbWeight=0.50, gcrefRegs=4180000 {x19 x20 x26}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG12: ; bbWeight=1, gcrefRegs=C180000 {x19 x20 x26 x27}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x27 @@ -854,12 +860,13 @@ G_M7842_IG13: ; bbWeight=0.50, gcrefRegs=4180000 {x19 x20 x26}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG14: ; bbWeight=1, gcrefRegs=C180000 {x19 x20 x26 x27}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x27 @@ -999,12 +1006,13 @@ G_M7842_IG15: ; bbWeight=0.50, gcrefRegs=4180000 {x19 x20 x26}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG16: ; bbWeight=1, gcrefRegs=C180000 {x19 x20 x26 x27}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x27 @@ -1144,12 +1152,13 @@ G_M7842_IG17: ; bbWeight=0.50, gcrefRegs=4100000 {x20 x26}, byrefRegs=000 movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x27, x0 ; gcrRegs +[x27]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M7842_IG18: ; bbWeight=1, gcrefRegs=C100000 {x20 x26 x27}, byrefRegs=0000 {}, byref ; gcrRegs -[x0] mov x0, x27 @@ -1277,7 +1286,7 @@ G_M7842_IG20: ; bbWeight=0.50, gcVars=00000000000000000000000000000000 {} b G_M7842_IG10 ;; size=8 bbWeight=0.50 PerfScore 1.50
-; Total bytes of code 3276, prolog size 44, PerfScore 662.00, instruction count 819, allocated bytes for code 3276 (MethodHash=e29ee15d) for method Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonReader:.cctor() (FullOpts)
+; Total bytes of code 3312, prolog size 44, PerfScore 677.00, instruction count 828, allocated bytes for code 3312 (MethodHash=e29ee15d) for method Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonReader:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -1288,7 +1297,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 819 (0x00333) Actual length = 3276 (0x000ccc)
+ Function Length : 828 (0x0033c) Actual length = 3312 (0x000cf0)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+24 (+1.67%) : 5507.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)

@@ -141,12 +141,13 @@ G_M25385_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32
- ldr x21, [x1]
+ ldr x1, [x1] + ldr x21, [x1, #0x60]
ldr x1, [x21, #0x18] blr x1 sxtw w22, w0 cbz w22, G_M25385_IG04
- ;; size=240 bbWeight=1 PerfScore 48.00
+ ;; size=244 bbWeight=1 PerfScore 51.00
G_M25385_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs -[x19] movz x0, #0xD1FFAB1E @@ -156,12 +157,13 @@ G_M25385_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x19, x0 ; gcrRegs +[x19]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M25385_IG04: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x19 @@ -208,12 +210,13 @@ G_M25385_IG05: ; bbWeight=0.50, gcrefRegs=480000 {x19 x22}, byrefRegs=000 movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x23, x0 ; gcrRegs +[x23]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M25385_IG06: ; bbWeight=1, gcrefRegs=C80000 {x19 x22 x23}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x23 @@ -257,12 +260,13 @@ G_M25385_IG07: ; bbWeight=0.50, gcrefRegs=880000 {x19 x23}, byrefRegs=000 movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x24, x0 ; gcrRegs +[x24]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M25385_IG08: ; bbWeight=1, gcrefRegs=1880000 {x19 x23 x24}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x24 @@ -308,12 +312,13 @@ G_M25385_IG09: ; bbWeight=0.50, gcrefRegs=C80000 {x19 x22 x23}, byrefRegs movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x24, x0 ; gcrRegs +[x24]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M25385_IG10: ; bbWeight=1, gcrefRegs=1C80000 {x19 x22 x23 x24}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x24 @@ -359,12 +364,13 @@ G_M25385_IG11: ; bbWeight=0.50, gcrefRegs=1C80000 {x19 x22 x23 x24}, byre movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x25, x0 ; gcrRegs +[x25]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M25385_IG12: ; bbWeight=1, gcrefRegs=3C80000 {x19 x22 x23 x24 x25}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x25 @@ -585,7 +591,7 @@ G_M25385_IG16: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=24 bbWeight=1 PerfScore 7.00
-; Total bytes of code 1436, prolog size 28, PerfScore 276.12, instruction count 359, allocated bytes for code 1436 (MethodHash=c8319cd6) for method Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)
+; Total bytes of code 1460, prolog size 28, PerfScore 286.62, instruction count 365, allocated bytes for code 1460 (MethodHash=c8319cd6) for method Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -596,7 +602,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 359 (0x00167) Actual length = 1436 (0x00059c)
+ Function Length : 365 (0x0016d) Actual length = 1460 (0x0005b4)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+12 (+2.59%) : 5490.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)

@@ -71,12 +71,13 @@ G_M61493_IG02: ; bbWeight=1, gcrefRegs=0003 {x0 x1}, byrefRegs=380000 {x1 movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32
- ldr x23, [x1]
+ ldr x1, [x1] + ldr x23, [x1, #0x60]
ldr x1, [x23, #0x18] blr x1 sxtw w24, w0 cbz w24, G_M61493_IG04
- ;; size=112 bbWeight=1 PerfScore 26.00
+ ;; size=116 bbWeight=1 PerfScore 29.00
G_M61493_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=380000 {x19 x20 x21}, byref ; gcrRegs -[x22] movz x0, #0xD1FFAB1E @@ -86,12 +87,13 @@ G_M61493_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=380000 {x19 movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x22, x0 ; gcrRegs +[x22]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M61493_IG04: ; bbWeight=1, gcrefRegs=400000 {x22}, byrefRegs=380000 {x19 x20 x21}, byref, isz ; gcrRegs -[x0] mov x0, x22 @@ -141,12 +143,13 @@ G_M61493_IG05: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=380000 {x19 movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x70]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] mov x22, x0 ; gcrRegs +[x22]
- ;; size=40 bbWeight=0.50 PerfScore 5.25
+ ;; size=44 bbWeight=0.50 PerfScore 6.75
G_M61493_IG06: ; bbWeight=1, gcrefRegs=400000 {x22}, byrefRegs=380000 {x19 x20 x21}, byref ; gcrRegs -[x0] mov x0, x22 @@ -197,7 +200,7 @@ G_M61493_IG07: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=20 bbWeight=1 PerfScore 5.00
-; Total bytes of code 464, prolog size 24, PerfScore 100.00, instruction count 116, allocated bytes for code 464 (MethodHash=8df50fca) for method Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
+; Total bytes of code 476, prolog size 24, PerfScore 106.00, instruction count 119, allocated bytes for code 476 (MethodHash=8df50fca) for method Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
; ============================================================ Unwind Info: @@ -208,7 +211,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 116 (0x00074) Actual length = 464 (0x0001d0)
+ Function Length : 119 (0x00077) Actual length = 476 (0x0001dc)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

benchmarks.run_pgo.osx.arm64.checked.mch

-16 (-0.83%) : 30931.dasm - System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)

@@ -8,8 +8,8 @@ ; 14 inlinees with PGO data; 58 single block inlinees; 19 inlinees without PGO data ; Final local variable assignments ;
-; V00 arg0 [V00,T50] ( 6, 5 ) ref -> x19 class-hnd single-def <System.Collections.Generic.Dictionary`2[System.String,System.String]> -; V01 loc0 [V01,T51] ( 5, 7 ) ref -> x20 class-hnd <System.IO.MemoryStream>
+; V00 arg0 [V00,T51] ( 6, 5 ) ref -> x19 class-hnd single-def <System.Collections.Generic.Dictionary`2[System.String,System.String]> +; V01 loc0 [V01,T30] ( 7, 11.50) ref -> x20 class-hnd <System.IO.MemoryStream>
; V02 loc1 [V02,T29] ( 9, 14.50) ref -> x21 class-hnd <ubyte[]> ;* V03 loc2 [V03 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Span`1[ubyte]> ;* V04 loc3 [V04 ] ( 0, 0 ) struct (16) zero-ref <System.Span`1[ubyte]> @@ -44,7 +44,7 @@ ; V33 tmp16 [V33,T16] ( 3, 24 ) int -> x1 "impAppendStmt" ;* V34 tmp17 [V34 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]> ;* V35 tmp18 [V35 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
-; V36 tmp19 [V36,T35] ( 2, 8 ) ref -> x21 class-hnd "dup spill" <ubyte[]>
+; V36 tmp19 [V36,T36] ( 2, 8 ) ref -> x21 class-hnd "dup spill" <ubyte[]>
; V37 tmp20 [V37,T64] ( 2, 4 ) long -> x22 "Inlining Arg" ; V38 tmp21 [V38,T70] ( 2, 2 ) struct (40) [fp-0xA8] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.String]> ;* V39 tmp22 [V39 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]> @@ -59,7 +59,7 @@ ;* V48 tmp31 [V48 ] ( 0, 0 ) int -> zero-ref "impAppendStmt" ;* V49 tmp32 [V49 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V50 tmp33 [V50 ] ( 0, 0 ) int -> zero-ref
-; V51 tmp34 [V51,T30] ( 4, 8 ) int -> x4 "Inline stloc first use temp"
+; V51 tmp34 [V51,T31] ( 4, 8 ) int -> x4 "Inline stloc first use temp"
;* V52 tmp35 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]> ; V53 tmp36 [V53 ] ( 3, 6 ) byref -> [fp-0xB0] must-init pinned "Inline stloc first use temp" ; V54 tmp37 [V54,T54] ( 3, 6 ) long -> x28 "Inline stloc first use temp" @@ -79,7 +79,7 @@ ;* V68 tmp51 [V68 ] ( 0, 0 ) int -> zero-ref ; V69 tmp52 [V69,T00] ( 11,156 ) int -> [fp-0xB4] "Inlining Arg" ; V70 tmp53 [V70,T02] ( 11,128 ) long -> [fp-0xC0] "Inlining Arg"
-; V71 tmp54 [V71,T43] ( 2, 8 ) long -> x5 "dup spill"
+; V71 tmp54 [V71,T44] ( 2, 8 ) long -> x5 "dup spill"
;* V72 tmp55 [V72 ] ( 0, 0 ) struct ( 8) zero-ref "dup spill" <System.ValueTuple`2[uint,uint]> ; V73 tmp56 [V73,T05] ( 3, 48 ) int -> x27 "Inline stloc first use temp" ;* V74 tmp57 [V74 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" @@ -113,8 +113,8 @@ ;* V102 tmp85 [V102 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V103 tmp86 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]> ;* V104 tmp87 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-; V105 tmp88 [V105,T44] ( 2, 8 ) int -> x3 "Inlining Arg" -; V106 tmp89 [V106,T36] ( 2, 8 ) byref -> x6 "Inlining Arg"
+; V105 tmp88 [V105,T45] ( 2, 8 ) int -> x3 "Inlining Arg" +; V106 tmp89 [V106,T37] ( 2, 8 ) byref -> x6 "Inlining Arg"
;* V107 tmp90 [V107 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V108 tmp91 [V108 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ; V109 tmp92 [V109,T09] ( 4, 32 ) int -> x3 "Inlining Arg" @@ -125,8 +125,8 @@ ;* V114 tmp97 [V114 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V115 tmp98 [V115 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]> ;* V116 tmp99 [V116 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-; V117 tmp100 [V117,T45] ( 2, 8 ) int -> x26 "Inlining Arg" -; V118 tmp101 [V118,T37] ( 2, 8 ) byref -> x28 "Inlining Arg"
+; V117 tmp100 [V117,T46] ( 2, 8 ) int -> x26 "Inlining Arg" +; V118 tmp101 [V118,T38] ( 2, 8 ) byref -> x28 "Inlining Arg"
;* V119 tmp102 [V119 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V120 tmp103 [V120 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ; V121 tmp104 [V121,T10] ( 4, 32 ) int -> x3 "Inlining Arg" @@ -150,20 +150,20 @@ ; V139 tmp122 [V139,T07] ( 13, 45 ) int -> x23 "field V03._length (fldOffset=0x8)" P-INDEP ;* V140 tmp123 [V140 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP ;* V141 tmp124 [V141 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-; V142 tmp125 [V142,T38] ( 2, 8 ) ref -> x25 "field V08.key (fldOffset=0x0)" P-INDEP -; V143 tmp126 [V143,T39] ( 2, 8 ) ref -> x26 "field V08.value (fldOffset=0x8)" P-INDEP
+; V142 tmp125 [V142,T39] ( 2, 8 ) ref -> x25 "field V08.key (fldOffset=0x0)" P-INDEP +; V143 tmp126 [V143,T40] ( 2, 8 ) ref -> x26 "field V08.value (fldOffset=0x8)" P-INDEP
;* V144 tmp127 [V144 ] ( 0, 0 ) ubyte -> zero-ref "field V16._format (fldOffset=0x0)" P-INDEP ;* V145 tmp128 [V145 ] ( 0, 0 ) ubyte -> zero-ref "field V16._precision (fldOffset=0x1)" P-INDEP ; V146 tmp129 [V146,T69] ( 2, 2 ) byref -> x22 single-def "field V18._reference (fldOffset=0x0)" P-INDEP ;* V147 tmp130 [V147,T73] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP ; V148 tmp131 [V148,T56] ( 2, 6 ) byref -> x4 "field V22._reference (fldOffset=0x0)" P-INDEP ; V149 tmp132 [V149,T57] ( 2, 6 ) int -> x5 "field V22._length (fldOffset=0x8)" P-INDEP
-; V150 tmp133 [V150,T31] ( 3, 8 ) byref -> x25 "field V26._reference (fldOffset=0x0)" P-INDEP -; V151 tmp134 [V151,T33] ( 3, 8 ) int -> [fp-0xCC] "field V26._length (fldOffset=0x8)" P-INDEP
+; V150 tmp133 [V150,T32] ( 3, 8 ) byref -> x25 "field V26._reference (fldOffset=0x0)" P-INDEP +; V151 tmp134 [V151,T34] ( 3, 8 ) int -> [fp-0xCC] "field V26._length (fldOffset=0x8)" P-INDEP
;* V152 tmp135 [V152 ] ( 0, 0 ) byref -> zero-ref "field V27._reference (fldOffset=0x0)" P-INDEP ;* V153 tmp136 [V153 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
-; V154 tmp137 [V154,T32] ( 3, 8 ) byref -> x28 "field V31._reference (fldOffset=0x0)" P-INDEP -; V155 tmp138 [V155,T34] ( 3, 8 ) int -> x26 "field V31._length (fldOffset=0x8)" P-INDEP
+; V154 tmp137 [V154,T33] ( 3, 8 ) byref -> x28 "field V31._reference (fldOffset=0x0)" P-INDEP +; V155 tmp138 [V155,T35] ( 3, 8 ) int -> x26 "field V31._length (fldOffset=0x8)" P-INDEP
;* V156 tmp139 [V156 ] ( 0, 0 ) byref -> zero-ref "field V32._reference (fldOffset=0x0)" P-INDEP ;* V157 tmp140 [V157 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP ;* V158 tmp141 [V158 ] ( 0, 0 ) byref -> zero-ref "field V34._reference (fldOffset=0x0)" P-INDEP @@ -198,26 +198,26 @@ ; V187 tmp170 [V187,T66] ( 2, 4 ) int -> x6 "field V103._length (fldOffset=0x8)" P-INDEP ;* V188 tmp171 [V188 ] ( 0, 0 ) byref -> zero-ref "field V104._reference (fldOffset=0x0)" P-INDEP ;* V189 tmp172 [V189 ] ( 0, 0 ) int -> zero-ref "field V104._length (fldOffset=0x8)" P-INDEP
-; V190 tmp173 [V190,T40] ( 2, 8 ) byref -> x3 "field V110._reference (fldOffset=0x0)" P-INDEP -; V191 tmp174 [V191,T46] ( 2, 8 ) int -> x4 "field V110._length (fldOffset=0x8)" P-INDEP
+; V190 tmp173 [V190,T41] ( 2, 8 ) byref -> x3 "field V110._reference (fldOffset=0x0)" P-INDEP +; V191 tmp174 [V191,T47] ( 2, 8 ) int -> x4 "field V110._length (fldOffset=0x8)" P-INDEP
; V192 tmp175 [V192,T63] ( 2, 4 ) byref -> x28 "field V115._reference (fldOffset=0x0)" P-INDEP ; V193 tmp176 [V193,T67] ( 2, 4 ) int -> x26 "field V115._length (fldOffset=0x8)" P-INDEP ;* V194 tmp177 [V194 ] ( 0, 0 ) byref -> zero-ref "field V116._reference (fldOffset=0x0)" P-INDEP ;* V195 tmp178 [V195 ] ( 0, 0 ) int -> zero-ref "field V116._length (fldOffset=0x8)" P-INDEP
-; V196 tmp179 [V196,T41] ( 2, 8 ) byref -> x3 "field V122._reference (fldOffset=0x0)" P-INDEP -; V197 tmp180 [V197,T47] ( 2, 8 ) int -> x4 "field V122._length (fldOffset=0x8)" P-INDEP
+; V196 tmp179 [V196,T42] ( 2, 8 ) byref -> x3 "field V122._reference (fldOffset=0x0)" P-INDEP +; V197 tmp180 [V197,T48] ( 2, 8 ) int -> x4 "field V122._length (fldOffset=0x8)" P-INDEP
;* V198 tmp181 [V198 ] ( 0, 0 ) byref -> zero-ref "field V128._reference (fldOffset=0x0)" P-INDEP ;* V199 tmp182 [V199 ] ( 0, 0 ) int -> zero-ref "field V128._length (fldOffset=0x8)" P-INDEP ;* V200 tmp183 [V200 ] ( 0, 0 ) byref -> zero-ref "field V132._reference (fldOffset=0x0)" P-INDEP ;* V201 tmp184 [V201 ] ( 0, 0 ) int -> zero-ref "field V132._length (fldOffset=0x8)" P-INDEP
-; V202 tmp185 [V202,T42] ( 2, 8 ) byref -> x1 "field V133._reference (fldOffset=0x0)" P-INDEP -; V203 tmp186 [V203,T48] ( 2, 8 ) int -> x2 "field V133._length (fldOffset=0x8)" P-INDEP
+; V202 tmp185 [V202,T43] ( 2, 8 ) byref -> x1 "field V133._reference (fldOffset=0x0)" P-INDEP +; V203 tmp186 [V203,T49] ( 2, 8 ) int -> x2 "field V133._length (fldOffset=0x8)" P-INDEP
;* V204 tmp187 [V204 ] ( 0, 0 ) ref -> zero-ref single-def "V38.[000..008)" ; V205 tmp188 [V205,T72] ( 2, 1 ) int -> x0 "V38.[008..012)" ;* V206 tmp189 [V206 ] ( 0, 0 ) int -> zero-ref "V38.[012..016)" ;* V207 tmp190 [V207 ] ( 0, 0 ) int -> zero-ref "V38.[016..020)" ;* V208 tmp191 [V208 ] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[SF] "by-value struct argument" <System.Buffers.StandardFormat>
-; V209 tmp192 [V209,T49] ( 2, 8 ) long -> x28 "Cast away GC"
+; V209 tmp192 [V209,T50] ( 2, 8 ) long -> x28 "Cast away GC"
; V210 GsCookie [V210 ] ( 1, 1 ) long -> [fp-0xE8] do-not-enreg[X] addr-exposed "GSSecurityCookie" ; V211 cse0 [V211,T19] ( 3, 18.25) ref -> x24 hoist "CSE - moderate" ; V212 cse1 [V212,T20] ( 5, 16.25) ref -> x19 hoist "CSE - moderate" @@ -713,10 +713,8 @@ G_M33777_IG37: ; bbWeight=4, gcrefRegs=1380000 {x19 x20 x21 x24}, byrefRe sxtw w2, w25 mov x0, x20 ; gcrRegs +[x0]
- movz x3, #0xD1FFAB1E - movk x3, #0xD1FFAB1E LSL #16 - movk x3, #1 LSL #32 - ldr x3, [x3]
+ ldr x3, [x20] + ldr x3, [x3, #0x68]
ldr x3, [x3, #0x38] blr x3 ; gcrRegs -[x0] @@ -733,22 +731,20 @@ G_M33777_IG37: ; bbWeight=4, gcrefRegs=1380000 {x19 x20 x21 x24}, byrefRe blr x2 ; gcr arg pop 0 cbnz w0, G_M33777_IG07
- ;; size=76 bbWeight=4 PerfScore 74.00
+ ;; size=68 bbWeight=4 PerfScore 80.00
G_M33777_IG38: ; bbWeight=0.50, gcrefRegs=300000 {x20 x21}, byrefRegs=0000 {}, byref ; gcrRegs -[x19 x24] ; byrRegs -[x22] mov x0, x20 ; gcrRegs +[x0] mov x1, xzr
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x20] + ldr x2, [x2, #0x50]
ldr x2, [x2, #0x18] blr x2 ; gcrRegs -[x0] ; gcr arg pop 0
- ;; size=32 bbWeight=0.50 PerfScore 4.75
+ ;; size=24 bbWeight=0.50 PerfScore 5.50
G_M33777_IG39: ; bbWeight=1, gcrefRegs=300000 {x20 x21}, byrefRegs=0000 {}, byref, isz cbz x21, G_M33777_IG41 ;; size=4 bbWeight=1 PerfScore 1.00 @@ -943,7 +939,7 @@ G_M33777_IG50: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1920, prolog size 76, PerfScore 1174.00, instruction count 480, allocated bytes for code 1920 (MethodHash=d24f7c0e) for method System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
+; Total bytes of code 1904, prolog size 76, PerfScore 1180.75, instruction count 476, allocated bytes for code 1904 (MethodHash=d24f7c0e) for method System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
; ============================================================ Unwind Info: @@ -954,7 +950,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 480 (0x001e0) Actual length = 1920 (0x000780)
+ Function Length : 476 (0x001dc) Actual length = 1904 (0x000770)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-0.68%) : 53389.dasm - Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag:ReportUseSite(Microsoft.CodeAnalysis.CSharp.Symbol,Microsoft.CodeAnalysis.SyntaxNode):ubyte:this (Tier1)

@@ -9,7 +9,7 @@ ; 14 inlinees with PGO data; 8 single block inlinees; 0 inlinees without PGO data ; Final local variable assignments ;
-; V00 this [V00,T01] ( 8, 3 ) ref -> x20 this class-hnd single-def <Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag>
+; V00 this [V00,T01] ( 9, 3 ) ref -> x20 this class-hnd single-def <Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag>
; V01 arg1 [V01,T00] ( 11, 6.62) ref -> x19 class-hnd single-def <Microsoft.CodeAnalysis.CSharp.Symbol> ; V02 arg2 [V02,T02] ( 3, 2 ) ref -> x21 class-hnd single-def <Microsoft.CodeAnalysis.SyntaxNode> ;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" @@ -343,15 +343,13 @@ G_M44692_IG29: ; bbWeight=0, gcrefRegs=700000 {x20 x21 x22}, byrefRegs=00 ldr x1, [fp, #0xA8] // [V53 tmp50] ; gcrRegs +[x1] mov x0, x20
- movz x4, #0xD1FFAB1E - movk x4, #0xD1FFAB1E LSL #16 - movk x4, #1 LSL #32 - ldr x4, [x4]
+ ldr x4, [x20] + ldr x4, [x4, #0x48]
ldr x4, [x4, #0x28] blr x4 ; gcrRegs -[x0-x3 x19] b G_M44692_IG31
- ;; size=72 bbWeight=0 PerfScore 0.00
+ ;; size=64 bbWeight=0 PerfScore 0.00
G_M44692_IG30: ; bbWeight=0, gcrefRegs=100000 {x20}, byrefRegs=0000 {}, byref ldr x0, [fp, #0xA8] // [V53 tmp50] ; gcrRegs +[x0] @@ -578,7 +576,7 @@ G_M44692_IG46: ; bbWeight=0, gcrefRegs=F00104 {x2 x8 x20 x21 x22 x23}, by b G_M44692_IG23 ;; size=60 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1172, prolog size 60, PerfScore 91.01, instruction count 293, allocated bytes for code 1172 (MethodHash=aaa7516b) for method Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag:ReportUseSite(Microsoft.CodeAnalysis.CSharp.Symbol,Microsoft.CodeAnalysis.SyntaxNode):ubyte:this (Tier1)
+; Total bytes of code 1164, prolog size 60, PerfScore 91.01, instruction count 291, allocated bytes for code 1164 (MethodHash=aaa7516b) for method Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag:ReportUseSite(Microsoft.CodeAnalysis.CSharp.Symbol,Microsoft.CodeAnalysis.SyntaxNode):ubyte:this (Tier1)
; ============================================================ Unwind Info: @@ -589,7 +587,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 293 (0x00125) Actual length = 1172 (0x000494)
+ Function Length : 291 (0x00123) Actual length = 1164 (0x00048c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-16 (-0.48%) : 55064.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary2[System.String,System.Collections.Generic.List1[System.Reflection.RuntimePropertyInfo]],System.Span1[ubyte],ubyte,byref):this (Tier1)

@@ -22,7 +22,7 @@ ; V10 loc3 [V10,T58] ( 3, 3.71) int -> x26 ; V11 loc4 [V11,T16] ( 9, 15.12) int -> x24 ; V12 loc5 [V12,T20] ( 9, 15.76) int -> x27
-; V13 loc6 [V13,T10] ( 11, 20.79) ref -> x27 class-hnd exact <System.Reflection.RuntimePropertyInfo>
+; V13 loc6 [V13,T09] ( 13, 23.04) ref -> x27 class-hnd exact <System.Reflection.RuntimePropertyInfo>
; V14 loc7 [V14 ] ( 2, 4.24) ubyte -> [fp+0x138] do-not-enreg[X] addr-exposed ld-addr-op ;* V15 loc8 [V15 ] ( 0, 0 ) struct (16) zero-ref <System.MdUtf8String> ;* V16 loc9 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Reflection.MetadataImport> @@ -92,7 +92,7 @@ ; V80 tmp56 [V80,T85] ( 3, 0.56) ubyte -> x0 "Inline return value spill temp" ;* V81 tmp57 [V81 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V82 tmp58 [V82 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-; V83 tmp59 [V83,T09] ( 6, 21.18) ref -> [fp+0x50] class-hnd exact spill-single-def ptr "Inlining Arg" <System.RuntimeType+RuntimeTypeCache>
+; V83 tmp59 [V83,T10] ( 6, 21.18) ref -> [fp+0x50] class-hnd exact spill-single-def ptr "Inlining Arg" <System.RuntimeType+RuntimeTypeCache>
;* V84 tmp60 [V84 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Reflection.MetadataImport> ; V85 tmp61 [V85 ] ( 1, 2.12) struct (16) [fp+0x108] do-not-enreg[XS] addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.ConstArray> ;* V86 tmp62 [V86 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.Reflection.MetadataImport> @@ -744,7 +744,7 @@ G_M9628_IG48: ; bbWeight=2.12, gcVars=00000000000000000000000000000000 {} ; gcrRegs -[x0] cbnz w0, G_M9628_IG85 ;; size=40 bbWeight=2.12 PerfScore 26.47
-G_M9628_IG49: ; bbWeight=2.12, gcVars=00000000000000000000000000000208 {V28 V83}, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=A00000 {x21 x23}, gcvars, byref, isz
+G_M9628_IG49: ; bbWeight=2.12, gcVars=00000000000000000000000000000408 {V28 V83}, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=A00000 {x21 x23}, gcvars, byref, isz
; gcrRegs -[x2] mov x0, x19 ; gcrRegs +[x0] @@ -870,17 +870,15 @@ G_M9628_IG50: ; bbWeight=1.98, gcVars=00000000000000000000000000000000 {} mov x0, x27 ; gcrRegs +[x0] mov w1, wzr
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x27] + ldr x2, [x2, #0x60]
ldr x2, [x2, #0x08] blr x2 ; gcr arg pop 0 mov x2, x0 ; gcrRegs +[x2] cbz x2, G_M9628_IG56
- ;; size=40 bbWeight=1.98 PerfScore 21.78
+ ;; size=32 bbWeight=1.98 PerfScore 24.75
G_M9628_IG51: ; bbWeight=1.98, gcrefRegs=8580004 {x2 x19 x20 x22 x27}, byrefRegs=A00000 {x21 x23}, byref, isz ; gcrRegs -[x0] cbz x2, G_M9628_IG53 @@ -940,10 +938,8 @@ G_M9628_IG56: ; bbWeight=0.27, gcrefRegs=8580000 {x19 x20 x22 x27}, byref mov x0, x27 ; gcrRegs +[x0] mov w1, wzr
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x27] + ldr x2, [x2, #0x60]
ldr x2, [x2, #0x18] blr x2 ; gcr arg pop 0 @@ -952,7 +948,7 @@ G_M9628_IG56: ; bbWeight=0.27, gcrefRegs=8580000 {x19 x20 x22 x27}, byref mov x2, x1 ; gcrRegs +[x2] b G_M9628_IG51
- ;; size=44 bbWeight=0.27 PerfScore 3.16
+ ;; size=36 bbWeight=0.27 PerfScore 3.57
G_M9628_IG57: ; bbWeight=7.45, gcVars=00000000000000000000000000000020 {V120}, gcrefRegs=8580000 {x19 x20 x22 x27}, byrefRegs=A00000 {x21 x23}, gcvars, byref, isz ; gcrRegs -[x0-x2] ; GC ptr vars +{V05 V120} @@ -1280,9 +1276,9 @@ G_M9628_IG83: ; bbWeight=0, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=A00 ; gcr arg pop 0 b G_M9628_IG23 ;; size=48 bbWeight=0 PerfScore 0.00
-G_M9628_IG84: ; bbWeight=0, gcVars=00000000000000000000000000000208 {V28 V83}, gcrefRegs=580004 {x2 x19 x20 x22}, byrefRegs=A00000 {x21 x23}, gcvars, byref, isz
+G_M9628_IG84: ; bbWeight=0, gcVars=00000000000000000000000000000408 {V28 V83}, gcrefRegs=580004 {x2 x19 x20 x22}, byrefRegs=A00000 {x21 x23}, gcvars, byref, isz
; gcrRegs +[x2]
- ; GC ptr vars +{V03 V28 V83}
+ ; GC ptr vars +{V03 V10 V28 V83}
movz x0, #8 movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32 @@ -1320,7 +1316,7 @@ G_M9628_IG85: ; bbWeight=0, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=A00 G_M9628_IG86: ; bbWeight=0, gcVars=00000000000000000000002000000000 {V30}, gcrefRegs=0000 {}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs -[x19-x20 x22] ; byrRegs -[x21 x23]
- ; GC ptr vars -{V03 V28 V83} +{V30}
+ ; GC ptr vars -{V03 V10 V28 V83} +{V30}
ldr x2, [fp, #0x60] // [V30 tmp6] ; gcrRegs +[x2] mov x1, x2 @@ -1576,7 +1572,7 @@ G_M9628_IG100: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 3352, prolog size 112, PerfScore 1191.74, instruction count 838, allocated bytes for code 3352 (MethodHash=a5a7da63) for method System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
+; Total bytes of code 3336, prolog size 112, PerfScore 1195.12, instruction count 834, allocated bytes for code 3336 (MethodHash=a5a7da63) for method System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
; ============================================================ Unwind Info: @@ -1587,7 +1583,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 838 (0x00346) Actual length = 3352 (0x000d18)
+ Function Length : 834 (0x00342) Actual length = 3336 (0x000d08)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-0.14%) : 54108.dasm - Microsoft.CodeAnalysis.CSharp.Emit.PEAssemblyBuilderBase:CreateEmbeddedAttributesIfNeeded(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (Tier1)

@@ -10,7 +10,7 @@ ; Final local variable assignments ; ; V00 this [V00,T02] ( 38, 7 ) ref -> x19 this class-hnd single-def <Microsoft.CodeAnalysis.CSharp.Emit.PEAssemblyBuilderBase>
-; V01 arg1 [V01,T15] ( 24, 3 ) ref -> x20 class-hnd single-def <Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag>
+; V01 arg1 [V01,T15] ( 25, 3 ) ref -> x20 class-hnd single-def <Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag>
; V02 loc0 [V02,T31] ( 17, 2 ) int -> x21 ;* V03 loc1 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <<unknown class>> ;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" @@ -2044,16 +2044,14 @@ G_M38586_IG108: ; bbWeight=0, gcrefRegs=1DD80004 {x2 x19 x20 x22 x23 x24 mov x1, x27 ; gcrRegs +[x1] mov x0, x20
- movz x4, #0xD1FFAB1E - movk x4, #0xD1FFAB1E LSL #16 - movk x4, #1 LSL #32 - ldr x4, [x4]
+ ldr x4, [x20] + ldr x4, [x4, #0x48]
ldr x4, [x4, #0x28] blr x4 ; gcrRegs -[x0-x3 x25 x27] ; gcr arg pop 0 b G_M38586_IG110
- ;; size=76 bbWeight=0 PerfScore 0.00
+ ;; size=68 bbWeight=0 PerfScore 0.00
G_M38586_IG109: ; bbWeight=0, gcrefRegs=1DD80000 {x19 x20 x22 x23 x24 x26 x27 x28}, byrefRegs=0000 {}, byref ; gcrRegs +[x27] ldr w0, [x27, #0x20] @@ -2653,7 +2651,7 @@ G_M38586_IG145: ; bbWeight=0, extend b G_M38586_IG44 ;; size=96 bbWeight=0 PerfScore 0.00
-; Total bytes of code 5724, prolog size 88, PerfScore 262.32, instruction count 1431, allocated bytes for code 5724 (MethodHash=a68b6945) for method Microsoft.CodeAnalysis.CSharp.Emit.PEAssemblyBuilderBase:CreateEmbeddedAttributesIfNeeded(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (Tier1)
+; Total bytes of code 5716, prolog size 88, PerfScore 262.32, instruction count 1429, allocated bytes for code 5716 (MethodHash=a68b6945) for method Microsoft.CodeAnalysis.CSharp.Emit.PEAssemblyBuilderBase:CreateEmbeddedAttributesIfNeeded(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (Tier1)
; ============================================================ Unwind Info: @@ -2664,7 +2662,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 1431 (0x00597) Actual length = 5724 (0x00165c)
+ Function Length : 1429 (0x00595) Actual length = 5716 (0x001654)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-12 (-0.11%) : 37340.dasm - System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)

@@ -4846,17 +4846,14 @@ G_M21650_IG216: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, by ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M21650_IG217: ; bbWeight=0.50, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ; gcrRegs -[x19] +[x0]
- ldr xzr, [x0] - movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x08] blr x1 ; gcr arg pop 0 mov x19, x0 ; gcrRegs +[x19]
- ;; size=32 bbWeight=0.50 PerfScore 6.00
+ ;; size=20 bbWeight=0.50 PerfScore 5.25
G_M21650_IG218: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x19 @@ -4943,7 +4940,7 @@ G_M21650_IG225: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 11396, prolog size 84, PerfScore 6918.25, instruction count 2849, allocated bytes for code 11396 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)
+; Total bytes of code 11384, prolog size 84, PerfScore 6917.50, instruction count 2846, allocated bytes for code 11384 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)
; ============================================================ Unwind Info: @@ -4954,7 +4951,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 2849 (0x00b21) Actual length = 11396 (0x002c84)
+ Function Length : 2846 (0x00b1e) Actual length = 11384 (0x002c78)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+0.23%) : 67280.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

@@ -170,6 +170,7 @@ G_M22068_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0xC0]
ldr x1, [x1, #0x30] blr x1 ; gcrRegs +[x0] @@ -189,7 +190,7 @@ G_M22068_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ; gcrRegs -[x0] ; gcr arg pop 0 cbz w0, G_M22068_IG12
- ;; size=80 bbWeight=1 PerfScore 22.00
+ ;; size=84 bbWeight=1 PerfScore 25.00
G_M22068_IG07: ; bbWeight=4, gcrefRegs=100000 {x20}, byrefRegs=0000 {}, byref, isz mov x0, x20 ; gcrRegs +[x0] @@ -812,7 +813,7 @@ G_M22068_IG43: ; bbWeight=0, gcVars=0000000000000001 {V00}, gcrefRegs=000 brk_unix #0 ;; size=56 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1716, prolog size 56, PerfScore 985.88, instruction count 429, allocated bytes for code 1716 (MethodHash=a21fa9cb) for method Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)
+; Total bytes of code 1720, prolog size 56, PerfScore 988.88, instruction count 430, allocated bytes for code 1720 (MethodHash=a21fa9cb) for method Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)
; ============================================================ Unwind Info: @@ -823,7 +824,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 389 (0x00185) Actual length = 1556 (0x000614)
+ Function Length : 390 (0x00186) Actual length = 1560 (0x000618)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

benchmarks.run_tiered.osx.arm64.checked.mch

-8 (-14.29%) : 23374.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (Tier1)

@@ -7,9 +7,9 @@ ; No matching PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Net.SafeDeleteSslContext>
+; V00 this [V00,T01] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Net.SafeDeleteSslContext>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V02 tmp1 [V02,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -33,19 +33,17 @@ G_M62171_IG04: ; bbWeight=0.50, epilog, nogc, extend ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M62171_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x20]
- ;; size=20 bbWeight=0.50 PerfScore 3.75
+ ;; size=12 bbWeight=0.50 PerfScore 4.50
G_M62171_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 56, prolog size 8, PerfScore 11.50, instruction count 14, allocated bytes for code 56 (MethodHash=a01f0d24) for method System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (Tier1)
+; Total bytes of code 48, prolog size 8, PerfScore 12.25, instruction count 12, allocated bytes for code 48 (MethodHash=a01f0d24) for method System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (Tier1)
; ============================================================ Unwind Info: @@ -56,7 +54,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-10.53%) : 27090.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (Tier1)

@@ -7,9 +7,9 @@ ; No matching PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Security.Cryptography.X509Certificates.AppleCertificatePal>
+; V00 this [V00,T01] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Security.Cryptography.X509Certificates.AppleCertificatePal>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V02 tmp1 [V02,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def ; V04 tmp3 [V04,T02] ( 3, 2 ) int -> x19 ; @@ -32,15 +32,13 @@ G_M42006_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M42006_IG04: ; bbWeight=0.50, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x20] blr x1 ; gcrRegs -[x0] sxtw w19, w0
- ;; size=28 bbWeight=0.50 PerfScore 4.50
+ ;; size=20 bbWeight=0.50 PerfScore 5.25
G_M42006_IG05: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref cmp w19, #0 cset x0, eq @@ -51,7 +49,7 @@ G_M42006_IG06: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=12 bbWeight=1 PerfScore 4.00
-; Total bytes of code 76, prolog size 12, PerfScore 16.75, instruction count 19, allocated bytes for code 76 (MethodHash=39965be9) for method System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (Tier1)
+; Total bytes of code 68, prolog size 12, PerfScore 17.50, instruction count 17, allocated bytes for code 68 (MethodHash=39965be9) for method System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (Tier1)
; ============================================================ Unwind Info: @@ -62,7 +60,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 19 (0x00013) Actual length = 76 (0x00004c)
+ Function Length : 17 (0x00011) Actual length = 68 (0x000044)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-8.00%) : 29531.dasm - System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (Tier1)

@@ -13,7 +13,7 @@ ;* V02 tmp1 [V02,T04] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ; V03 tmp2 [V03,T03] ( 2, 1 ) ubyte -> x0 "Inline return value spill temp" ;* V04 tmp3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Net.SafeDeleteSslContext>
-; V05 tmp4 [V05,T01] ( 3, 3 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V05 tmp4 [V05,T01] ( 4, 4 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V06 tmp5 [V06 ] ( 0, 0 ) ref -> zero-ref single-def ; V07 cse0 [V07,T02] ( 3, 2.50) ref -> x0 "CSE - aggressive" ; @@ -34,10 +34,8 @@ G_M58768_IG02: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by G_M58768_IG03: ; bbWeight=0.50, gcrefRegs=80001 {x0 x19}, byrefRegs=0000 {}, byref, isz ldr x0, [x0, #0x20] cbz x0, G_M58768_IG05
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x20] blr x1 ; gcrRegs -[x0] @@ -47,7 +45,7 @@ G_M58768_IG03: ; bbWeight=0.50, gcrefRegs=80001 {x0 x19}, byrefRegs=0000 cbnz x0, G_M58768_IG05 ldrb w0, [x19, #0x1A] ; gcrRegs -[x0]
- ;; size=48 bbWeight=0.50 PerfScore 10.25
+ ;; size=40 bbWeight=0.50 PerfScore 11.00
G_M58768_IG04: ; bbWeight=0.50, epilog, nogc, extend ldr x19, [sp, #0x18] ldp fp, lr, [sp], #0x20 @@ -63,7 +61,7 @@ G_M58768_IG06: ; bbWeight=0.50, epilog, nogc, extend ret lr ;; size=12 bbWeight=0.50 PerfScore 2.00
-; Total bytes of code 100, prolog size 12, PerfScore 21.50, instruction count 25, allocated bytes for code 100 (MethodHash=00a41a6f) for method System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (Tier1)
+; Total bytes of code 92, prolog size 12, PerfScore 22.25, instruction count 23, allocated bytes for code 92 (MethodHash=00a41a6f) for method System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (Tier1)
; ============================================================ Unwind Info: @@ -74,7 +72,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 25 (0x00019) Actual length = 100 (0x000064)
+ Function Length : 23 (0x00017) Actual length = 92 (0x00005c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-0.35%) : 10581.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary2[System.String,System.Collections.Generic.List1[System.Reflection.RuntimePropertyInfo]],System.Span1[ubyte],ubyte,byref):this (Tier1)

@@ -21,7 +21,7 @@ ; V10 loc3 [V10,T61] ( 3, 3 ) int -> [fp+0x100] spill-single-def ptr ; V11 loc4 [V11,T12] ( 9, 24.50) int -> [fp+0xFC] ptr ; V12 loc5 [V12,T17] ( 5, 16 ) int -> [fp+0xF8] spill-single-def ptr
-; V13 loc6 [V13,T09] ( 9, 46 ) ref -> [fp+0x98] class-hnd exact spill-single-def ptr <System.Reflection.RuntimePropertyInfo>
+; V13 loc6 [V13,T08] ( 10, 48 ) ref -> [fp+0x98] class-hnd exact spill-single-def ptr <System.Reflection.RuntimePropertyInfo>
; V14 loc7 [V14 ] ( 2, 4 ) ubyte -> [fp+0xF0] do-not-enreg[X] addr-exposed ld-addr-op ;* V15 loc8 [V15 ] ( 0, 0 ) struct (16) zero-ref <System.MdUtf8String> ;* V16 loc9 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Reflection.MetadataImport> @@ -114,7 +114,7 @@ ; V103 tmp79 [V103,T60] ( 3, 3.50) int -> [fp+0xC8] spill-single-def ptr "V04.[008..012)" ; V104 tmp80 [V104,T40] ( 2, 8 ) long -> x3 "Cast away GC" ; V105 tmp81 [V105,T26] ( 3, 12 ) ref -> x0 "arr expr"
-; V106 tmp82 [V106,T08] ( 3, 48 ) ref -> x0 "arr expr"
+; V106 tmp82 [V106,T09] ( 3, 48 ) ref -> x0 "arr expr"
; V107 tmp83 [V107,T01] ( 3, 96 ) ref -> x0 "arr expr" ; V108 tmp84 [V108,T06] ( 2, 64 ) ref -> x0 "argument with side effect" ; V109 GsCookie [V109 ] ( 1, 1 ) long -> [fp+0x168] do-not-enreg[X] addr-exposed "GSSecurityCookie" @@ -622,10 +622,8 @@ G_M9628_IG39: ; bbWeight=2, gcrefRegs=100000 {x20}, byrefRegs=0000 {}, by mov x0, x2 ; gcrRegs +[x0] mov w1, wzr
- movz x3, #0xD1FFAB1E - movk x3, #0xD1FFAB1E LSL #16 - movk x3, #1 LSL #32 - ldr x3, [x3]
+ ldr x3, [x2] + ldr x3, [x3, #0x60]
str x3, [fp, #0xC0] // [V110 cse0] ldr x4, [x3, #0x08] ; GC ptr vars -{V28} @@ -646,7 +644,7 @@ G_M9628_IG39: ; bbWeight=2, gcrefRegs=100000 {x20}, byrefRegs=0000 {}, by ; gcrRegs +[x1] mov x2, x1 ; gcrRegs +[x2]
- ;; size=180 bbWeight=2 PerfScore 108.00
+ ;; size=172 bbWeight=2 PerfScore 111.00
G_M9628_IG40: ; bbWeight=2, gcrefRegs=900004 {x2 x20 x23}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0-x1] cbz x2, G_M9628_IG42 @@ -754,7 +752,7 @@ G_M9628_IG44: ; bbWeight=1, gcrefRegs=900000 {x20 x23}, byrefRegs=0000 {} ; gcrRegs +[x22] b G_M9628_IG60 ;; size=8 bbWeight=1 PerfScore 3.00
-G_M9628_IG45: ; bbWeight=1, gcVars=00000000000000000004000020000220 {V03 V06 V13 V102}, gcrefRegs=900004 {x2 x20 x23}, byrefRegs=0000 {}, gcvars, byref
+G_M9628_IG45: ; bbWeight=1, gcVars=00000000000000000004000020000120 {V03 V06 V13 V102}, gcrefRegs=900004 {x2 x20 x23}, byrefRegs=0000 {}, gcvars, byref
; gcrRegs -[x22] +[x2] ; GC ptr vars -{V29} +{V13} ldp x19, x22, [fp, #0xA0] // [V06 arg6], [V03 arg3] @@ -762,7 +760,7 @@ G_M9628_IG45: ; bbWeight=1, gcVars=00000000000000000004000020000220 {V03 ; byrRegs +[x19] b G_M9628_IG59 ;; size=8 bbWeight=1 PerfScore 4.00
-G_M9628_IG46: ; bbWeight=2, gcVars=00000000000000000004040000000220 {V06 V13 V19 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
+G_M9628_IG46: ; bbWeight=2, gcVars=00000000000000000004040000000120 {V06 V13 V19 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
; gcrRegs -[x2] ; byrRegs -[x19] ; GC ptr vars -{V03} +{V19} @@ -825,7 +823,7 @@ G_M9628_IG46: ; bbWeight=2, gcVars=00000000000000000004040000000220 {V06 ldr x1, [fp, #0x88] // [V20 loc13] ; gcrRegs +[x1] ;; size=144 bbWeight=2 PerfScore 63.00
-G_M9628_IG47: ; bbWeight=2, gcVars=00000000000000000004000000000220 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
+G_M9628_IG47: ; bbWeight=2, gcVars=00000000000000000004000000000120 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
; GC ptr vars -{V20} mov w2, wzr ldr w0, [x1, #0x10] @@ -869,7 +867,7 @@ G_M9628_IG48: ; bbWeight=16, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs mov w2, w14 blt G_M9628_IG48 ;; size=104 bbWeight=16 PerfScore 576.00
-G_M9628_IG49: ; bbWeight=2, gcVars=00000000000000000004000000000220 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
+G_M9628_IG49: ; bbWeight=2, gcVars=00000000000000000004000000000120 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref, isz
; GC ptr vars -{V20} ldp w15, w14, [x1, #0x10] add w14, w14, #1 @@ -894,14 +892,14 @@ G_M9628_IG49: ; bbWeight=2, gcVars=00000000000000000004000000000220 {V06 ; byrRegs +[x19] b G_M9628_IG59 ;; size=60 bbWeight=2 PerfScore 42.00
-G_M9628_IG50: ; bbWeight=1, gcVars=00000000000000000004000000000228 {V06 V13 V20 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref
+G_M9628_IG50: ; bbWeight=1, gcVars=00000000000000000004000000000128 {V06 V13 V20 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref
; byrRegs -[x19] ; GC ptr vars +{V03 V20} ldr x1, [fp, #0x88] // [V20 loc13] ; gcrRegs +[x1] b G_M9628_IG47 ;; size=8 bbWeight=1 PerfScore 3.00
-G_M9628_IG51: ; bbWeight=2, gcVars=00000000000000000004000000000220 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref
+G_M9628_IG51: ; bbWeight=2, gcVars=00000000000000000004000000000120 {V06 V13 V102}, gcrefRegs=D00002 {x1 x20 x22 x23}, byrefRegs=0000 {}, gcvars, byref
; GC ptr vars -{V03 V20} mov x0, x1 ; gcrRegs +[x0] @@ -926,7 +924,7 @@ G_M9628_IG52: ; bbWeight=2, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=000 cmp w0, #0 ble G_M9628_IG59 ;; size=20 bbWeight=2 PerfScore 14.00
-G_M9628_IG53: ; bbWeight=16, gcVars=00000000000000000004000000000200 {V13 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=80000 {x19}, gcvars, byref, isz
+G_M9628_IG53: ; bbWeight=16, gcVars=00000000000000000004000000000100 {V13 V102}, gcrefRegs=D00000 {x20 x22 x23}, byrefRegs=80000 {x19}, gcvars, byref, isz
; GC ptr vars -{V06} ldr w0, [x19, #0x10] str w2, [fp, #0xE8] // [V23 loc16] @@ -1086,7 +1084,7 @@ G_M9628_IG66: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2280, prolog size 96, PerfScore 2217.75, instruction count 570, allocated bytes for code 2280 (MethodHash=a5a7da63) for method System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
+; Total bytes of code 2272, prolog size 96, PerfScore 2220.75, instruction count 568, allocated bytes for code 2272 (MethodHash=a5a7da63) for method System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
; ============================================================ Unwind Info: @@ -1097,7 +1095,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 570 (0x0023a) Actual length = 2280 (0x0008e8)
+ Function Length : 568 (0x00238) Actual length = 2272 (0x0008e0)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-12 (-0.11%) : 29589.dasm - System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)

@@ -4846,17 +4846,14 @@ G_M21650_IG216: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, by ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M21650_IG217: ; bbWeight=0.50, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ; gcrRegs -[x19] +[x0]
- ldr xzr, [x0] - movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x08] blr x1 ; gcr arg pop 0 mov x19, x0 ; gcrRegs +[x19]
- ;; size=32 bbWeight=0.50 PerfScore 6.00
+ ;; size=20 bbWeight=0.50 PerfScore 5.25
G_M21650_IG218: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref, isz ; gcrRegs -[x0] mov x0, x19 @@ -4943,7 +4940,7 @@ G_M21650_IG225: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 11396, prolog size 84, PerfScore 6918.25, instruction count 2849, allocated bytes for code 11396 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)
+; Total bytes of code 11384, prolog size 84, PerfScore 6917.50, instruction count 2846, allocated bytes for code 11384 (MethodHash=ecf5ab6d) for method System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)
; ============================================================ Unwind Info: @@ -4954,7 +4951,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 2849 (0x00b21) Actual length = 11396 (0x002c84)
+ Function Length : 2846 (0x00b1e) Actual length = 11384 (0x002c78)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+0.23%) : 42512.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

@@ -170,6 +170,7 @@ G_M22068_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0xC0]
ldr x1, [x1, #0x30] blr x1 ; gcrRegs +[x0] @@ -189,7 +190,7 @@ G_M22068_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ; gcrRegs -[x0] ; gcr arg pop 0 cbz w0, G_M22068_IG12
- ;; size=80 bbWeight=1 PerfScore 22.00
+ ;; size=84 bbWeight=1 PerfScore 25.00
G_M22068_IG07: ; bbWeight=4, gcrefRegs=100000 {x20}, byrefRegs=0000 {}, byref, isz mov x0, x20 ; gcrRegs +[x0] @@ -812,7 +813,7 @@ G_M22068_IG43: ; bbWeight=0, gcVars=0000000000000001 {V00}, gcrefRegs=000 brk_unix #0 ;; size=56 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1716, prolog size 56, PerfScore 985.88, instruction count 429, allocated bytes for code 1716 (MethodHash=a21fa9cb) for method Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)
+; Total bytes of code 1720, prolog size 56, PerfScore 988.88, instruction count 430, allocated bytes for code 1720 (MethodHash=a21fa9cb) for method Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)
; ============================================================ Unwind Info: @@ -823,7 +824,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 389 (0x00185) Actual length = 1556 (0x000614)
+ Function Length : 390 (0x00186) Actual length = 1560 (0x000618)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

coreclr_tests.run.osx.arm64.checked.mch

-16 (-23.53%) : 254468.dasm - GitHub_18497:Test():System.Numerics.Vector`1float

@@ -8,7 +8,7 @@ ; Final local variable assignments ; ;# V00 OutArgs [V00 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V01 cse0 [V01,T00] ( 2, 2 ) long -> x0 "CSE - aggressive"
+; V01 cse0 [V01,T00] ( 3, 3 ) long -> x0 "CSE - aggressive"
; ; Lcl frame size = 0 @@ -20,23 +20,19 @@ G_M43943_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movz x0, #0xD1FFAB1E // data for <unknown class>:<unknown field> movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32
- ldr q0, [x0] - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldr q1, [x0]
+ ldp q0, q1, [x0]
movz x0, #0xD1FFAB1E // code for <unknown method> movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32 ldr x0, [x0] blr x0
- ;; size=52 bbWeight=1 PerfScore 14.50
+ ;; size=36 bbWeight=1 PerfScore 10.00
G_M43943_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 68, prolog size 8, PerfScore 18.00, instruction count 17, allocated bytes for code 68 (MethodHash=92ba5458) for method GitHub_18497:Test():System.Numerics.Vector`1[float] (FullOpts)
+; Total bytes of code 52, prolog size 8, PerfScore 13.50, instruction count 13, allocated bytes for code 52 (MethodHash=92ba5458) for method GitHub_18497:Test():System.Numerics.Vector`1[float] (FullOpts)
; ============================================================ Unwind Info: @@ -47,7 +43,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 17 (0x00011) Actual length = 68 (0x000044)
+ Function Length : 13 (0x0000d) Actual length = 52 (0x000034)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-36 (-22.50%) : 256825.dasm - bug1:TestEntryPoint() (FullOpts)

@@ -9,7 +9,7 @@ ; ;# V00 OutArgs [V00 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ;* V01 cse0 [V01,T01] ( 0, 0 ) long -> zero-ref "CSE - aggressive"
-; V02 cse1 [V02,T00] ( 2, 2 ) long -> x0 "CSE - aggressive"
+; V02 cse1 [V02,T00] ( 5, 5 ) long -> x0 "CSE - aggressive"
; ; Lcl frame size = 0 @@ -30,27 +30,18 @@ G_M5006_IG03: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x0, #1 LSL #32 mov w1, #3 str w1, [x0]
- mov w0, #2 - movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - str w0, [x1]
+ mov w1, #2 + str w1, [x0, #0x04]
fmov d16, #6.0000
- movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - str d16, [x0] - mov x0, #1 - movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - str x0, [x1]
+ str d16, [x0, #0x08] + mov x1, #1 + str x1, [x0, #0x10]
movz x0, #0xD1FFAB1E // code for bug1:f():int movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32 ldr x0, [x0] blr x0
- ;; size=100 bbWeight=1 PerfScore 17.50
+ ;; size=64 bbWeight=1 PerfScore 13.00
G_M5006_IG04: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr @@ -64,7 +55,7 @@ G_M5006_IG05: ; bbWeight=0, gcVars=0000000000000000 {}, gcrefRegs=0000 {} b G_M5006_IG03 ;; size=24 bbWeight=0 PerfScore 0.00
-; Total bytes of code 160, prolog size 8, PerfScore 26.50, instruction count 40, allocated bytes for code 160 (MethodHash=c14fec71) for method bug1:TestEntryPoint() (FullOpts)
+; Total bytes of code 124, prolog size 8, PerfScore 22.00, instruction count 31, allocated bytes for code 124 (MethodHash=c14fec71) for method bug1:TestEntryPoint() (FullOpts)
; ============================================================ Unwind Info: @@ -75,7 +66,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 40 (0x00028) Actual length = 160 (0x0000a0)
+ Function Length : 31 (0x0001f) Actual length = 124 (0x00007c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-12 (-16.67%) : 200991.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)

@@ -12,8 +12,8 @@ ;* V01 tmp1 [V01 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Nullable`1[ubyte]> ;* V02 tmp2 [V02,T02] ( 0, 0 ) ubyte -> zero-ref "field V01.hasValue (fldOffset=0x0)" P-INDEP ;* V03 tmp3 [V03,T03] ( 0, 0 ) ubyte -> zero-ref "field V01.value (fldOffset=0x1)" P-INDEP
-; V04 cse0 [V04,T00] ( 2, 2 ) byref -> x0 "CSE - aggressive" -; V05 cse1 [V05,T01] ( 2, 1 ) long -> x0 "CSE - moderate"
+; V04 cse0 [V04,T00] ( 3, 3 ) byref -> x0 "CSE - aggressive" +; V05 cse1 [V05,T01] ( 2, 1 ) long -> x1 "CSE - moderate"
; ; Lcl frame size = 0 @@ -25,28 +25,27 @@ G_M5950_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32
- ldrb w0, [x0] - cbnz w0, G_M5950_IG04
+ ldrb w1, [x0] + cbnz w1, G_M5950_IG04
;; size=20 bbWeight=1 PerfScore 5.50
-G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E // data for <unknown class>:<unknown field> - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - mov w1, #0xD1FFAB1E - strh w1, [x0]
+G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ; byrRegs +[x0] + movz x1, #0xD1FFAB1E // data for <unknown class>:<unknown field> + movk x1, #0xD1FFAB1E LSL #16 + movk x1, #1 LSL #32 + mov w2, #0xD1FFAB1E + strh w2, [x1]
;; size=20 bbWeight=0.50 PerfScore 1.50
-G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w0, [x0] - ;; size=16 bbWeight=1 PerfScore 4.50
+G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ldrb w0, [x0, #0x01] + ; byrRegs -[x0] + ;; size=4 bbWeight=1 PerfScore 3.00
G_M5950_IG05: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 72, prolog size 8, PerfScore 15.00, instruction count 18, allocated bytes for code 72 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
+; Total bytes of code 60, prolog size 8, PerfScore 13.50, instruction count 15, allocated bytes for code 60 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +56,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 18 (0x00012) Actual length = 72 (0x000048)
+ Function Length : 15 (0x0000f) Actual length = 60 (0x00003c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+3.57%) : 252616.dasm - Runtime_95347:Test():int (FullOpts)

@@ -30,11 +30,12 @@ G_M13057_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x48]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] cbz x0, G_M13057_IG07
- ;; size=40 bbWeight=1 PerfScore 11.00
+ ;; size=44 bbWeight=1 PerfScore 14.00
G_M13057_IG03: ; bbWeight=0.25, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref, isz ldr w1, [x0, #0x08] cmp w1, #4 @@ -65,7 +66,7 @@ G_M13057_IG08: ; bbWeight=0.50, epilog, nogc, extend ret lr ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 112, prolog size 8, PerfScore 16.94, instruction count 28, allocated bytes for code 112 (MethodHash=260fccfe) for method Runtime_95347:Test():int (FullOpts)
+; Total bytes of code 116, prolog size 8, PerfScore 19.94, instruction count 29, allocated bytes for code 116 (MethodHash=260fccfe) for method Runtime_95347:Test():int (FullOpts)
; ============================================================ Unwind Info: @@ -76,7 +77,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 28 (0x0001c) Actual length = 112 (0x000070)
+ Function Length : 29 (0x0001d) Actual length = 116 (0x000074)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+12 (+4.05%) : 197223.dasm - ForwardSubCallArgInterference3:TestEntryPoint():int (FullOpts)

@@ -13,21 +13,21 @@ ;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ; V03 tmp1 [V03,T04] ( 2, 4 ) ref -> x19 class-hnd exact single-def "NewObj constructor temp" <C> ;* V04 tmp2 [V04 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-;* V05 tmp3 [V05,T12] ( 0, 0 ) long -> zero-ref "argument with side effect" -; V06 tmp4 [V06,T07] ( 2, 4 ) int -> x2 "argument with side effect" -; V07 tmp5 [V07,T05] ( 2, 4 ) byref -> x3 single-def "argument with side effect" -;* V08 tmp6 [V08,T13] ( 0, 0 ) long -> zero-ref "argument with side effect"
+; V05 tmp3 [V05,T07] ( 2, 4 ) long -> x3 "argument with side effect" +; V06 tmp4 [V06,T08] ( 2, 4 ) int -> x4 "argument with side effect" +; V07 tmp5 [V07,T05] ( 2, 4 ) byref -> x0 single-def "argument with side effect" +; V08 tmp6 [V08,T09] ( 2, 4 ) long -> x5 "argument with side effect"
; V09 tmp7 [V09,T06] ( 2, 4 ) ref -> x2 single-def "argument with side effect"
-; V10 tmp8 [V10,T08] ( 2, 4 ) int -> x19 "argument with side effect"
+; V10 tmp8 [V10,T10] ( 2, 4 ) int -> x19 "argument with side effect"
; V11 tmp9 [V11,T00] ( 6, 12 ) ref -> x1 single-def "MD array shared temp"
-; V12 tmp10 [V12,T01] ( 3, 6 ) int -> x3 "MD array shared temp" -; V13 tmp11 [V13,T02] ( 3, 6 ) int -> x4 "MD array shared temp" -;* V14 cse0 [V14,T14] ( 0, 0 ) long -> zero-ref "CSE - aggressive"
+; V12 tmp10 [V12,T01] ( 3, 6 ) int -> x0 "MD array shared temp" +; V13 tmp11 [V13,T02] ( 3, 6 ) int -> x5 "MD array shared temp" +;* V14 cse0 [V14,T15] ( 0, 0 ) long -> zero-ref "CSE - aggressive"
; V15 cse1 [V15,T03] ( 4, 4 ) long -> x20 "CSE - aggressive"
-; V16 cse2 [V16,T09] ( 3, 3 ) long -> x1 "CSE - aggressive" -; V17 cse3 [V17,T10] ( 3, 3 ) int -> x0 "CSE - aggressive" -;* V18 cse4 [V18,T15] ( 0, 0 ) long -> zero-ref "CSE - aggressive" -; V19 rat0 [V19,T11] ( 2, 2 ) long -> x0 "Spilling to split statement for tree"
+; V16 cse2 [V16,T11] ( 3, 3 ) long -> x1 "CSE - aggressive" +; V17 cse3 [V17,T12] ( 3, 3 ) int -> x6 "CSE - aggressive" +; V18 cse4 [V18,T13] ( 3, 3 ) long -> x2 "CSE - aggressive" +; V19 rat0 [V19,T14] ( 2, 2 ) long -> x0 "Spilling to split statement for tree"
; ; Lcl frame size = 48 @@ -69,34 +69,39 @@ G_M45892_IG03: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x15 x19] ldr w19, [fp, #0x30] // [V00 loc0+0x08]
- ldrb w2, [x20, #0x3C]
+ movz x2, #0xD1FFAB1E // data for <unknown class>:<unknown field> + movk x2, #0xD1FFAB1E LSL #16 + movk x2, #1 LSL #32 + add x3, x2, #8 + ldrb w4, [x20, #0x3C]
ldr x1, [x1, #0x18] ; gcrRegs +[x1]
- ldr w3, [x1, #0x18] - mov w4, wzr - sub w3, w4, w3 - ldp w4, w0, [x1, #0x10] - cmp w3, w4 - bhs G_M45892_IG05 - ldr w4, [x1, #0x1C]
+ ldr w0, [x1, #0x18]
mov w5, wzr
- sub w4, w5, w4 - cmp w4, w0
+ sub w0, w5, w0 + ldp w5, w6, [x1, #0x10] + cmp w0, w5
bhs G_M45892_IG05
- madd w3, w3, w0, w4 - mov w4, #24 - mov x0, #32 - umaddl x3, w3, w4, x0 - add x3, x3, x1 - ; byrRegs +[x3] - movz x1, #0xD1FFAB1E
+ ldr w5, [x1, #0x1C] + mov w7, wzr + sub w5, w7, w5 + cmp w5, w6 + bhs G_M45892_IG05 + madd w0, w0, w6, w5 + mov w5, #24 + mov x6, #32 + umaddl x0, w0, w5, x6 + add x0, x0, x1 + ; byrRegs +[x0] + add x5, x2, #12 + mov x1, x3
; gcrRegs -[x1]
- movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - movz x4, #0xD1FFAB1E - movk x4, #0xD1FFAB1E LSL #16 - movk x4, #1 LSL #32
+ mov w2, w4 + mov x3, x0 + ; byrRegs +[x3] + mov x4, x5
add x0, fp, #40 // [V00 loc0]
+ ; byrRegs -[x0]
movz x5, #0xD1FFAB1E // code for S0:M6(byref,ubyte,byref,byref):byte[]:this movk x5, #0xD1FFAB1E LSL #16 movk x5, #1 LSL #32 @@ -116,7 +121,7 @@ G_M45892_IG03: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by blr x3 ; gcrRegs -[x2] ldr w0, [x20, #0x38]
- ;; size=184 bbWeight=1 PerfScore 53.00
+ ;; size=196 bbWeight=1 PerfScore 54.50
G_M45892_IG04: ; bbWeight=1, epilog, nogc, extend ldp x19, x20, [sp, #0x40] ldp fp, lr, [sp], #0x50 @@ -132,7 +137,7 @@ G_M45892_IG06: ; bbWeight=0, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by b G_M45892_IG03 ;; size=12 bbWeight=0 PerfScore 0.00
-; Total bytes of code 296, prolog size 28, PerfScore 72.00, instruction count 74, allocated bytes for code 296 (MethodHash=3a3b4cbb) for method ForwardSubCallArgInterference3:TestEntryPoint():int (FullOpts)
+; Total bytes of code 308, prolog size 28, PerfScore 73.50, instruction count 77, allocated bytes for code 308 (MethodHash=3a3b4cbb) for method ForwardSubCallArgInterference3:TestEntryPoint():int (FullOpts)
; ============================================================ Unwind Info: @@ -143,7 +148,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 74 (0x0004a) Actual length = 296 (0x000128)
+ Function Length : 77 (0x0004d) Actual length = 308 (0x000134)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.55%) : 313929.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)

@@ -27,6 +27,7 @@ G_M26176_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x58]
ldr x1, [x1, #0x28] blr x1 ; gcrRegs +[x0] @@ -39,13 +40,13 @@ G_M26176_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
- ;; size=72 bbWeight=1.00 PerfScore 20.00
+ ;; size=76 bbWeight=1.00 PerfScore 23.00
G_M26176_IG03: ; bbWeight=1.00, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ;; size=8 bbWeight=1.00 PerfScore 2.00
-; Total bytes of code 88, prolog size 8, PerfScore 23.50, instruction count 22, allocated bytes for code 88 (MethodHash=6f0499bf) for method Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
+; Total bytes of code 92, prolog size 8, PerfScore 26.50, instruction count 23, allocated bytes for code 92 (MethodHash=6f0499bf) for method Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
; ============================================================ Unwind Info: @@ -56,7 +57,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 22 (0x00016) Actual length = 88 (0x000058)
+ Function Length : 23 (0x00017) Actual length = 92 (0x00005c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

libraries.pmi.osx.arm64.checked.mch

-12 (-21.43%) : 290835.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)

@@ -41,20 +41,17 @@ G_M31553_IG02: ; bbWeight=1, gcrefRegs=0021 {x0 x5}, byrefRegs=0000 {}, b cset x4, ne ldp x1, x2, [fp, #0x10] // [V01 arg1], [V01 arg1+0x08] ; gcrRegs +[x1]
- ldr xzr, [x0] - movz x6, #0xD1FFAB1E - movk x6, #0xD1FFAB1E LSL #16 - movk x6, #1 LSL #32
+ ldr x6, [x0] + ldr x6, [x6, #0x58]
ldr x6, [x6]
- ldr x6, [x6] - ;; size=36 bbWeight=1 PerfScore 14.50
+ ;; size=24 bbWeight=1 PerfScore 13.00
G_M31553_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x20 br x6 ; gcr arg pop 0 ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 56, prolog size 12, PerfScore 19.00, instruction count 14, allocated bytes for code 56 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
+; Total bytes of code 44, prolog size 12, PerfScore 17.50, instruction count 11, allocated bytes for code 44 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
; ============================================================ Unwind Info: @@ -65,7 +62,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 11 (0x0000b) Actual length = 44 (0x00002c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-14.29%) : 46625.dasm - Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary2[ubyte,System.Nullable1[int]]:GetHashCode():int:this (FullOpts)

@@ -7,9 +7,9 @@ ; No matching PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 3, 3 ) byref -> x0 this single-def
+; V00 this [V00,T01] ( 3, 3 ) byref -> x0 this single-def
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V02 tmp1 [V02,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -35,19 +35,17 @@ G_M21500_IG04: ; bbWeight=0.50, epilog, nogc, extend ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M21500_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x18]
- ;; size=20 bbWeight=0.50 PerfScore 3.75
+ ;; size=12 bbWeight=0.50 PerfScore 4.50
G_M21500_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 56, prolog size 8, PerfScore 11.50, instruction count 14, allocated bytes for code 56 (MethodHash=bb53ac03) for method Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary`2[ubyte,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
+; Total bytes of code 48, prolog size 8, PerfScore 12.25, instruction count 12, allocated bytes for code 48 (MethodHash=bb53ac03) for method Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary`2[ubyte,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
; ============================================================ Unwind Info: @@ -58,7 +56,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-14.29%) : 175285.dasm - Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)

@@ -7,9 +7,9 @@ ; No matching PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 3, 3 ) ref -> x0 this class-hnd single-def <Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString>
+; V00 this [V00,T01] ( 3, 3 ) ref -> x0 this class-hnd single-def <Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
+; V02 tmp1 [V02,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <<unknown class>>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -33,19 +33,17 @@ G_M47078_IG04: ; bbWeight=0.50, epilog, nogc, extend ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M47078_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x18]
- ;; size=20 bbWeight=0.50 PerfScore 3.75
+ ;; size=12 bbWeight=0.50 PerfScore 4.50
G_M47078_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 56, prolog size 8, PerfScore 11.50, instruction count 14, allocated bytes for code 56 (MethodHash=a2af4819) for method Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)
+; Total bytes of code 48, prolog size 8, PerfScore 12.25, instruction count 12, allocated bytes for code 48 (MethodHash=a2af4819) for method Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)
; ============================================================ Unwind Info: @@ -56,7 +54,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.76%) : 266165.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)

@@ -30,6 +30,7 @@ G_M2750_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x2, #0xD1FFAB1E LSL #16 movk x2, #1 LSL #32 ldr x2, [x2]
+ ldr x2, [x2, #0xC0]
ldr x2, [x2, #0x10] blr x2 ; gcrRegs +[x0] @@ -40,13 +41,13 @@ G_M2750_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs +[x15] bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=68 bbWeight=1 PerfScore 14.50
+ ;; size=72 bbWeight=1 PerfScore 17.50
G_M2750_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 84, prolog size 8, PerfScore 18.00, instruction count 21, allocated bytes for code 84 (MethodHash=43b3f541) for method System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
+; Total bytes of code 88, prolog size 8, PerfScore 21.00, instruction count 22, allocated bytes for code 88 (MethodHash=43b3f541) for method System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +58,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 21 (0x00015) Actual length = 84 (0x000054)
+ Function Length : 22 (0x00016) Actual length = 88 (0x000058)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.76%) : 301709.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)

@@ -30,6 +30,7 @@ G_M58324_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x2, #0xD1FFAB1E LSL #16 movk x2, #1 LSL #32 ldr x2, [x2]
+ ldr x2, [x2, #0xC0]
ldr x2, [x2, #0x10] blr x2 ; gcrRegs +[x0] @@ -40,13 +41,13 @@ G_M58324_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs +[x15] bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=68 bbWeight=1 PerfScore 14.50
+ ;; size=72 bbWeight=1 PerfScore 17.50
G_M58324_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 84, prolog size 8, PerfScore 18.00, instruction count 21, allocated bytes for code 84 (MethodHash=ca881c2b) for method System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)
+; Total bytes of code 88, prolog size 8, PerfScore 21.00, instruction count 22, allocated bytes for code 88 (MethodHash=ca881c2b) for method System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +58,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 21 (0x00015) Actual length = 84 (0x000054)
+ Function Length : 22 (0x00016) Actual length = 88 (0x000058)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.76%) : 266144.dasm - System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:.cctor() (FullOpts)

@@ -30,6 +30,7 @@ G_M47755_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x2, #0xD1FFAB1E LSL #16 movk x2, #1 LSL #32 ldr x2, [x2]
+ ldr x2, [x2, #0xC0]
ldr x2, [x2, #0x10] blr x2 ; gcrRegs +[x0] @@ -40,13 +41,13 @@ G_M47755_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs +[x15] bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=68 bbWeight=1 PerfScore 14.50
+ ;; size=72 bbWeight=1 PerfScore 17.50
G_M47755_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 84, prolog size 8, PerfScore 18.00, instruction count 21, allocated bytes for code 84 (MethodHash=6fdb4574) for method System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:.cctor() (FullOpts)
+; Total bytes of code 88, prolog size 8, PerfScore 21.00, instruction count 22, allocated bytes for code 88 (MethodHash=6fdb4574) for method System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +58,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 21 (0x00015) Actual length = 84 (0x000054)
+ Function Length : 22 (0x00016) Actual length = 88 (0x000058)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

libraries_tests.run.osx.arm64.Release.mch

-16 (-12.12%) : 462062.dasm - System.Security.Cryptography.SecKeyPair:Dispose():this (Tier1)

@@ -9,11 +9,11 @@ ; 4 inlinees with PGO data; 6 single block inlinees; 0 inlinees without PGO data ; Final local variable assignments ;
-; V00 this [V00,T00] ( 6, 6 ) ref -> x19 this class-hnd single-def <System.Security.Cryptography.SecKeyPair>
+; V00 this [V00,T02] ( 6, 6 ) ref -> x19 this class-hnd single-def <System.Security.Cryptography.SecKeyPair>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T01] ( 4, 8 ) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
+; V02 tmp1 [V02,T00] ( 5, 10 ) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref single-def
-; V04 tmp3 [V04,T02] ( 4, 8 ) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
+; V04 tmp3 [V04,T01] ( 5, 10 ) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
;* V05 tmp4 [V05 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -32,10 +32,8 @@ G_M31497_IG02: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by mov x0, x20 ; gcrRegs +[x0] mov w1, #1
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x20] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x30] blr x2 ; gcrRegs -[x0] @@ -43,7 +41,7 @@ G_M31497_IG02: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by ; gcrRegs +[x0] bl <unknown method> ; gcrRegs -[x0 x20]
- ;; size=48 bbWeight=1 PerfScore 15.00
+ ;; size=40 bbWeight=1 PerfScore 16.50
G_M31497_IG03: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref, isz str xzr, [x19, #0x10] ldr x20, [x19, #0x08] @@ -52,10 +50,8 @@ G_M31497_IG03: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by mov x0, x20 ; gcrRegs +[x0] mov w1, #1
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x20] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x30] blr x2 ; gcrRegs -[x0] @@ -63,7 +59,7 @@ G_M31497_IG03: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, by ; gcrRegs +[x0] bl <unknown method> ; gcrRegs -[x0 x20]
- ;; size=52 bbWeight=1 PerfScore 16.00
+ ;; size=44 bbWeight=1 PerfScore 17.50
G_M31497_IG04: ; bbWeight=1, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref str xzr, [x19, #0x08] ;; size=4 bbWeight=1 PerfScore 1.00 @@ -73,7 +69,7 @@ G_M31497_IG05: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=12 bbWeight=1 PerfScore 3.00
-; Total bytes of code 132, prolog size 12, PerfScore 38.00, instruction count 33, allocated bytes for code 132 (MethodHash=7f0184f6) for method System.Security.Cryptography.SecKeyPair:Dispose():this (Tier1)
+; Total bytes of code 116, prolog size 12, PerfScore 41.00, instruction count 29, allocated bytes for code 116 (MethodHash=7f0184f6) for method System.Security.Cryptography.SecKeyPair:Dispose():this (Tier1)
; ============================================================ Unwind Info: @@ -84,7 +80,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 33 (0x00021) Actual length = 132 (0x000084)
+ Function Length : 29 (0x0001d) Actual length = 116 (0x000074)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-16 (-11.11%) : 461842.dasm - System.Security.Cryptography.RSAImplementation+RSASecurityTransforms:Dispose(ubyte):this (Tier1)

@@ -14,9 +14,9 @@ ;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ; V03 tmp1 [V03,T00] ( 6, 10.59) ref -> x19 class-hnd exact single-def "dup spill" <System.Security.Cryptography.SecKeyPair> ;* V04 tmp2 [V04 ] ( 0, 0 ) ref -> zero-ref single-def
-; V05 tmp3 [V05,T01] ( 4, 6.59) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
+; V05 tmp3 [V05,T01] ( 5, 8.24) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
;* V06 tmp4 [V06 ] ( 0, 0 ) ref -> zero-ref single-def
-; V07 tmp5 [V07,T02] ( 4, 6.59) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
+; V07 tmp5 [V07,T02] ( 5, 8.24) ref -> x20 class-hnd exact single-def "dup spill" <System.Security.Cryptography.Apple.SafeSecKeyRefHandle>
;* V08 tmp6 [V08 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -42,10 +42,8 @@ G_M19214_IG03: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, mov x0, x20 ; gcrRegs +[x0] mov w1, #1
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x20] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x30] blr x2 ; gcrRegs -[x0] @@ -53,7 +51,7 @@ G_M19214_IG03: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, ; gcrRegs +[x0] bl <unknown method> ; gcrRegs -[x0 x20]
- ;; size=48 bbWeight=0.82 PerfScore 12.35
+ ;; size=40 bbWeight=0.82 PerfScore 13.59
G_M19214_IG04: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref, isz str xzr, [x19, #0x10] ldr x20, [x19, #0x08] @@ -62,10 +60,8 @@ G_M19214_IG04: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, mov x0, x20 ; gcrRegs +[x0] mov w1, #1
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x20] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x30] blr x2 ; gcrRegs -[x0] @@ -73,7 +69,7 @@ G_M19214_IG04: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, ; gcrRegs +[x0] bl <unknown method> ; gcrRegs -[x0 x20]
- ;; size=52 bbWeight=0.82 PerfScore 13.18
+ ;; size=44 bbWeight=0.82 PerfScore 14.41
G_M19214_IG05: ; bbWeight=0.82, gcrefRegs=80000 {x19}, byrefRegs=0000 {}, byref str xzr, [x19, #0x08] ;; size=4 bbWeight=0.82 PerfScore 0.82 @@ -84,7 +80,7 @@ G_M19214_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ret lr ;; size=12 bbWeight=1 PerfScore 3.00
-; Total bytes of code 144, prolog size 12, PerfScore 37.35, instruction count 36, allocated bytes for code 144 (MethodHash=d563b4f1) for method System.Security.Cryptography.RSAImplementation+RSASecurityTransforms:Dispose(ubyte):this (Tier1)
+; Total bytes of code 128, prolog size 12, PerfScore 39.82, instruction count 32, allocated bytes for code 128 (MethodHash=d563b4f1) for method System.Security.Cryptography.RSAImplementation+RSASecurityTransforms:Dispose(ubyte):this (Tier1)
; ============================================================ Unwind Info: @@ -95,7 +91,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 36 (0x00024) Actual length = 144 (0x000090)
+ Function Length : 32 (0x00020) Actual length = 128 (0x000080)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-10.00%) : 623916.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)

@@ -12,7 +12,7 @@ ; V00 this [V00,T01] ( 3, 3 ) ref -> x0 this class-hnd single-def <System.Threading.WaitHandle> ;* V01 arg1 [V01 ] ( 0, 0 ) ubyte -> zero-ref single-def ;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V03 tmp1 [V03,T00] ( 4, 8 ) ref -> x19 class-hnd exact single-def "dup spill" <<unknown class>>
+; V03 tmp1 [V03,T00] ( 5, 10 ) ref -> x19 class-hnd exact single-def "dup spill" <<unknown class>>
;* V04 tmp2 [V04 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 8 @@ -29,16 +29,14 @@ G_M46591_IG02: ; bbWeight=1, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byre cbz x19, G_M46591_IG04 mov x0, x19 mov w1, #1
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x19] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x30] blr x2 ; gcrRegs -[x0] mov x0, x19 ; gcrRegs +[x0]
- ;; size=44 bbWeight=1 PerfScore 14.00
+ ;; size=36 bbWeight=1 PerfScore 15.50
G_M46591_IG03: ; bbWeight=1, epilog, nogc, extend ldr x19, [sp, #0x18] ldp fp, lr, [sp], #0x20 @@ -51,7 +49,7 @@ G_M46591_IG04: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ret lr ;; size=12 bbWeight=0 PerfScore 0.00
-; Total bytes of code 80, prolog size 12, PerfScore 20.50, instruction count 20, allocated bytes for code 80 (MethodHash=d1cf4a00) for method System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)
+; Total bytes of code 72, prolog size 12, PerfScore 22.00, instruction count 18, allocated bytes for code 72 (MethodHash=d1cf4a00) for method System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)
; ============================================================ Unwind Info: @@ -62,7 +60,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 20 (0x00014) Actual length = 80 (0x000050)
+ Function Length : 18 (0x00012) Actual length = 72 (0x000048)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+2.04%) : 84865.dasm - System.GC:AllocateUninitializedArrayushort:ushort

@@ -74,11 +74,12 @@ G_M8903_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0xA0]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] cbz x0, G_M8903_IG10
- ;; size=84 bbWeight=1 PerfScore 17.50
+ ;; size=88 bbWeight=1 PerfScore 20.50
G_M8903_IG07: ; bbWeight=0.46, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ldr x0, [x0, #0x18] ; gcrRegs -[x0] @@ -101,7 +102,7 @@ G_M8903_IG10: ; bbWeight=0.04, gcVars=0000000000000000 {}, gcrefRegs=0000 b G_M8903_IG08 ;; size=8 bbWeight=0.04 PerfScore 0.06
-; Total bytes of code 196, prolog size 16, PerfScore 35.69, instruction count 49, allocated bytes for code 196 (MethodHash=3f15dd38) for method System.GC:AllocateUninitializedArray[ushort](int,ubyte):ushort[] (Instrumented Tier1)
+; Total bytes of code 200, prolog size 16, PerfScore 38.69, instruction count 50, allocated bytes for code 200 (MethodHash=3f15dd38) for method System.GC:AllocateUninitializedArray[ushort](int,ubyte):ushort[] (Instrumented Tier1)
; ============================================================ Unwind Info: @@ -112,7 +113,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 49 (0x00031) Actual length = 196 (0x0000c4)
+ Function Length : 50 (0x00032) Actual length = 200 (0x0000c8)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+2.04%) : 241558.dasm - System.GC:AllocateUninitializedArrayubyte:ubyte

@@ -74,11 +74,12 @@ G_M39911_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0xA0]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] cbz x0, G_M39911_IG10
- ;; size=84 bbWeight=1 PerfScore 17.50
+ ;; size=88 bbWeight=1 PerfScore 20.50
G_M39911_IG07: ; bbWeight=0.46, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ldr x0, [x0, #0x18] ; gcrRegs -[x0] @@ -101,7 +102,7 @@ G_M39911_IG10: ; bbWeight=0.04, gcVars=0000000000000000 {}, gcrefRegs=000 b G_M39911_IG08 ;; size=8 bbWeight=0.04 PerfScore 0.06
-; Total bytes of code 196, prolog size 16, PerfScore 35.69, instruction count 49, allocated bytes for code 196 (MethodHash=4acc6418) for method System.GC:AllocateUninitializedArray[ubyte](int,ubyte):ubyte[] (Instrumented Tier1)
+; Total bytes of code 200, prolog size 16, PerfScore 38.69, instruction count 50, allocated bytes for code 200 (MethodHash=4acc6418) for method System.GC:AllocateUninitializedArray[ubyte](int,ubyte):ubyte[] (Instrumented Tier1)
; ============================================================ Unwind Info: @@ -112,7 +113,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 49 (0x00031) Actual length = 196 (0x0000c4)
+ Function Length : 50 (0x00032) Actual length = 200 (0x0000c8)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+2.04%) : 178280.dasm - System.GC:AllocateUninitializedArrayint:int

@@ -74,11 +74,12 @@ G_M50407_IG06: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0xA0]
ldr x1, [x1, #0x08] blr x1 ; gcrRegs +[x0] cbz x0, G_M50407_IG10
- ;; size=84 bbWeight=1 PerfScore 17.50
+ ;; size=88 bbWeight=1 PerfScore 20.50
G_M50407_IG07: ; bbWeight=0.46, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, byref ldr x0, [x0, #0x18] ; gcrRegs -[x0] @@ -101,7 +102,7 @@ G_M50407_IG10: ; bbWeight=0.04, gcVars=0000000000000000 {}, gcrefRegs=000 b G_M50407_IG08 ;; size=8 bbWeight=0.04 PerfScore 0.06
-; Total bytes of code 196, prolog size 16, PerfScore 35.69, instruction count 49, allocated bytes for code 196 (MethodHash=a3303b18) for method System.GC:AllocateUninitializedArray[int](int,ubyte):int[] (Instrumented Tier1)
+; Total bytes of code 200, prolog size 16, PerfScore 38.69, instruction count 50, allocated bytes for code 200 (MethodHash=a3303b18) for method System.GC:AllocateUninitializedArray[int](int,ubyte):int[] (Instrumented Tier1)
; ============================================================ Unwind Info: @@ -112,7 +113,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 49 (0x00031) Actual length = 196 (0x0000c4)
+ Function Length : 50 (0x00032) Actual length = 200 (0x0000c8)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

librariestestsnotieredcompilation.run.osx.arm64.Release.mch

-12 (-21.43%) : 154714.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)

@@ -41,20 +41,17 @@ G_M31553_IG02: ; bbWeight=1, gcrefRegs=0021 {x0 x5}, byrefRegs=0000 {}, b cset x4, ne ldp x1, x2, [fp, #0x10] // [V01 arg1], [V01 arg1+0x08] ; gcrRegs +[x1]
- ldr xzr, [x0] - movz x6, #0xD1FFAB1E - movk x6, #0xD1FFAB1E LSL #16 - movk x6, #1 LSL #32
+ ldr x6, [x0] + ldr x6, [x6, #0x58]
ldr x6, [x6]
- ldr x6, [x6] - ;; size=36 bbWeight=1 PerfScore 14.50
+ ;; size=24 bbWeight=1 PerfScore 13.00
G_M31553_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x20 br x6 ; gcr arg pop 0 ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 56, prolog size 12, PerfScore 19.00, instruction count 14, allocated bytes for code 56 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
+; Total bytes of code 44, prolog size 12, PerfScore 17.50, instruction count 11, allocated bytes for code 44 (MethodHash=3bd084be) for method System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
; ============================================================ Unwind Info: @@ -65,7 +62,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 11 (0x0000b) Actual length = 44 (0x00002c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-12 (-16.67%) : 21390.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)

@@ -12,8 +12,8 @@ ;* V01 tmp1 [V01 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Nullable`1[ubyte]> ;* V02 tmp2 [V02,T02] ( 0, 0 ) ubyte -> zero-ref "field V01.hasValue (fldOffset=0x0)" P-INDEP ;* V03 tmp3 [V03,T03] ( 0, 0 ) ubyte -> zero-ref "field V01.value (fldOffset=0x1)" P-INDEP
-; V04 cse0 [V04,T00] ( 2, 2 ) byref -> x0 "CSE - aggressive" -; V05 cse1 [V05,T01] ( 2, 1 ) long -> x0 "CSE - moderate"
+; V04 cse0 [V04,T00] ( 3, 3 ) byref -> x0 "CSE - aggressive" +; V05 cse1 [V05,T01] ( 2, 1 ) long -> x1 "CSE - moderate"
; ; Lcl frame size = 0 @@ -25,28 +25,27 @@ G_M5950_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32
- ldrb w0, [x0] - cbnz w0, G_M5950_IG04
+ ldrb w1, [x0] + cbnz w1, G_M5950_IG04
;; size=20 bbWeight=1 PerfScore 5.50
-G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E // data for <unknown class>:<unknown field> - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - mov w1, #0xD1FFAB1E - strh w1, [x0]
+G_M5950_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ; byrRegs +[x0] + movz x1, #0xD1FFAB1E // data for <unknown class>:<unknown field> + movk x1, #0xD1FFAB1E LSL #16 + movk x1, #1 LSL #32 + mov w2, #0xD1FFAB1E + strh w2, [x1]
;; size=20 bbWeight=0.50 PerfScore 1.50
-G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w0, [x0] - ;; size=16 bbWeight=1 PerfScore 4.50
+G_M5950_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0001 {x0}, byref + ldrb w0, [x0, #0x01] + ; byrRegs -[x0] + ;; size=4 bbWeight=1 PerfScore 3.00
G_M5950_IG05: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 72, prolog size 8, PerfScore 15.00, instruction count 18, allocated bytes for code 72 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
+; Total bytes of code 60, prolog size 8, PerfScore 13.50, instruction count 15, allocated bytes for code 60 (MethodHash=c960e8c1) for method Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +56,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 18 (0x00012) Actual length = 72 (0x000048)
+ Function Length : 15 (0x0000f) Actual length = 60 (0x00003c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-14.29%) : 2946.dasm - Microsoft.VisualStudio.Composition.ByValueEquality+AssemblyNameComparer:GetHashCode(System.Reflection.AssemblyName):int:this (FullOpts)

@@ -9,9 +9,9 @@ ; Final local variable assignments ; ;* V00 this [V00 ] ( 0, 0 ) ref -> zero-ref this class-hnd single-def <Microsoft.VisualStudio.Composition.ByValueEquality+AssemblyNameComparer>
-; V01 arg1 [V01,T00] ( 3, 3 ) ref -> x1 class-hnd single-def <System.Reflection.AssemblyName>
+; V01 arg1 [V01,T01] ( 3, 3 ) ref -> x1 class-hnd single-def <System.Reflection.AssemblyName>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V03 tmp1 [V03,T01] ( 3, 5 ) ref -> x0 class-hnd exact single-def "dup spill" <System.String>
+; V03 tmp1 [V03,T00] ( 4, 6 ) ref -> x0 class-hnd exact single-def "dup spill" <System.String>
;* V04 tmp2 [V04 ] ( 0, 0 ) ref -> zero-ref single-def ; ; Lcl frame size = 0 @@ -36,19 +36,17 @@ G_M19135_IG04: ; bbWeight=0.50, epilog, nogc, extend ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M19135_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0001 {x0}, byrefRegs=0000 {}, gcvars, byref ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #2 LSL #32 - ldr x1, [x1]
+ ldr x1, [x0] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x18]
- ;; size=20 bbWeight=0.50 PerfScore 3.75
+ ;; size=12 bbWeight=0.50 PerfScore 4.50
G_M19135_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=0.50 PerfScore 1.00
-; Total bytes of code 56, prolog size 8, PerfScore 11.50, instruction count 14, allocated bytes for code 56 (MethodHash=e126b540) for method Microsoft.VisualStudio.Composition.ByValueEquality+AssemblyNameComparer:GetHashCode(System.Reflection.AssemblyName):int:this (FullOpts)
+; Total bytes of code 48, prolog size 8, PerfScore 12.25, instruction count 12, allocated bytes for code 48 (MethodHash=e126b540) for method Microsoft.VisualStudio.Composition.ByValueEquality+AssemblyNameComparer:GetHashCode(System.Reflection.AssemblyName):int:this (FullOpts)
; ============================================================ Unwind Info: @@ -59,7 +57,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 14 (0x0000e) Actual length = 56 (0x000038)
+ Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.76%) : 86616.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)

@@ -30,6 +30,7 @@ G_M2750_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byre movk x2, #0xD1FFAB1E LSL #16 movk x2, #1 LSL #32 ldr x2, [x2]
+ ldr x2, [x2, #0xC0]
ldr x2, [x2, #0x10] blr x2 ; gcrRegs +[x0] @@ -40,13 +41,13 @@ G_M2750_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byre ; gcrRegs +[x15] bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=68 bbWeight=1.00 PerfScore 14.50
+ ;; size=72 bbWeight=1.00 PerfScore 17.50
G_M2750_IG03: ; bbWeight=1.00, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr ;; size=8 bbWeight=1.00 PerfScore 2.00
-; Total bytes of code 84, prolog size 8, PerfScore 18.00, instruction count 21, allocated bytes for code 84 (MethodHash=43b3f541) for method System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
+; Total bytes of code 88, prolog size 8, PerfScore 21.00, instruction count 22, allocated bytes for code 88 (MethodHash=43b3f541) for method System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -57,7 +58,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 21 (0x00015) Actual length = 84 (0x000054)
+ Function Length : 22 (0x00016) Actual length = 88 (0x000058)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+5.26%) : 199111.dasm - System.Tests.Types.GenericTypeParameter1Of1Tests:CreateType():System.Type:this (FullOpts)

@@ -27,8 +27,9 @@ G_M41185_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movk x0, #1 LSL #32 movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16
- movk x1, #2 LSL #32
+ movk x1, #1 LSL #32
ldr x1, [x1]
+ ldr x1, [x1, #0xB8]
ldr x1, [x1, #0x38] blr x1 ; gcrRegs +[x0] @@ -36,7 +37,7 @@ G_M41185_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr cmp w1, #0 bls G_M41185_IG04 ldr x0, [x0, #0x10]
- ;; size=52 bbWeight=1.00 PerfScore 17.50
+ ;; size=56 bbWeight=1.00 PerfScore 20.50
G_M41185_IG03: ; bbWeight=1.00, epilog, nogc, extend ldp fp, lr, [sp], #0x10 ret lr @@ -47,7 +48,7 @@ G_M41185_IG04: ; bbWeight=0, gcVars=0000000000000000 {}, gcrefRegs=0000 { brk_unix #0 ;; size=8 bbWeight=0 PerfScore 0.00
-; Total bytes of code 76, prolog size 8, PerfScore 21.00, instruction count 19, allocated bytes for code 76 (MethodHash=53be5f1e) for method System.Tests.Types.GenericTypeParameter1Of1Tests:CreateType():System.Type:this (FullOpts)
+; Total bytes of code 80, prolog size 8, PerfScore 24.00, instruction count 20, allocated bytes for code 80 (MethodHash=53be5f1e) for method System.Tests.Types.GenericTypeParameter1Of1Tests:CreateType():System.Type:this (FullOpts)
; ============================================================ Unwind Info: @@ -58,7 +59,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 19 (0x00013) Actual length = 76 (0x00004c)
+ Function Length : 20 (0x00014) Actual length = 80 (0x000050)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+8.33%) : 173830.dasm - System.Reflection.Tests.AssemblyTests:GetExecutingAssembly():System.Reflection.Assembly (FullOpts)

@@ -27,15 +27,16 @@ G_M34055_IG02: ; bbWeight=1.00, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x58]
ldr x1, [x1, #0x28]
- ;; size=32 bbWeight=1.00 PerfScore 9.00
+ ;; size=36 bbWeight=1.00 PerfScore 12.00
G_M34055_IG03: ; bbWeight=1.00, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ; gcr arg pop 0 ;; size=8 bbWeight=1.00 PerfScore 2.00
-; Total bytes of code 48, prolog size 8, PerfScore 12.50, instruction count 12, allocated bytes for code 48 (MethodHash=b4987af8) for method System.Reflection.Tests.AssemblyTests:GetExecutingAssembly():System.Reflection.Assembly (FullOpts)
+; Total bytes of code 52, prolog size 8, PerfScore 15.50, instruction count 13, allocated bytes for code 52 (MethodHash=b4987af8) for method System.Reflection.Tests.AssemblyTests:GetExecutingAssembly():System.Reflection.Assembly (FullOpts)
; ============================================================ Unwind Info: @@ -46,7 +47,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 12 (0x0000c) Actual length = 48 (0x000030)
+ Function Length : 13 (0x0000d) Actual length = 52 (0x000034)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

realworld.run.osx.arm64.checked.mch

-36 (-7.09%) : 3320.dasm - Microsoft.Build.Shared.BuildEnvironmentHelper:CheckIfRunningTests():ubyte (FullOpts)

@@ -13,7 +13,7 @@ ;* V02 loc2 [V02 ] ( 0, 0 ) ref -> zero-ref class-hnd <<unknown class>> ; V03 loc3 [V03,T05] ( 3, 1.50) ubyte -> x20 ;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V05 tmp1 [V05,T00] ( 4, 3.50) ref -> x20 single-def "inline UNBOX clone1"
+; V05 tmp1 [V05,T01] ( 4, 3.50) ref -> x20 single-def "inline UNBOX clone1"
;* V06 tmp2 [V06 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Nullable`1[ubyte]> ;* V07 tmp3 [V07 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V08 tmp4 [V08,T10] ( 0, 0 ) ubyte -> zero-ref single-def "field V06.hasValue (fldOffset=0x0)" P-INDEP @@ -22,7 +22,7 @@ ; V11 tmp7 [V11,T02] ( 3, 3 ) ref -> x0 single-def "argument with side effect" ; V12 tmp8 [V12,T03] ( 3, 3 ) ref -> x0 single-def "argument with side effect" ; V13 PSPSym [V13,T09] ( 1, 1 ) long -> [fp+0x28] do-not-enreg[V] "PSPSym"
-; V14 cse0 [V14,T01] ( 4, 3 ) byref -> x19 "CSE - aggressive"
+; V14 cse0 [V14,T00] ( 7, 4.50) byref -> x19 "CSE - aggressive"
; V15 cse1 [V15,T06] ( 3, 1.50) long -> x1 "CSE - moderate" ; ; Lcl frame size = 32 @@ -42,19 +42,16 @@ G_M36239_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ldrb w0, [x19] cbz w0, G_M36239_IG05 ;; size=20 bbWeight=1 PerfScore 5.50
-G_M36239_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w0, [x0] - ;; size=16 bbWeight=0.50 PerfScore 2.25
+G_M36239_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=80000 {x19}, byref + ; byrRegs +[x19] + ldrb w0, [x19, #0x01] + ;; size=4 bbWeight=0.50 PerfScore 1.50
G_M36239_IG04: ; bbWeight=0.50, epilog, nogc, extend ldp x19, x20, [sp, #0x30] ldp fp, lr, [sp], #0x40 ret lr ;; size=12 bbWeight=0.50 PerfScore 1.50 G_M36239_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=0000 {}, byrefRegs=80000 {x19}, gcvars, byref
- ; byrRegs +[x19]
movz x1, #0xD1FFAB1E movk x1, #2 LSL #16 movk x1, #7 LSL #32 @@ -80,12 +77,9 @@ G_M36239_IG06: ; bbWeight=0.50, gcVars=0000000000000080 {V00}, gcrefRegs= ; gcr arg pop 0 ldrb w0, [x19] cbz w0, G_M36239_IG07
- movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w20, [x0]
+ ldrb w20, [x19, #0x01]
b G_M36239_IG13
- ;; size=68 bbWeight=0.50 PerfScore 10.75
+ ;; size=56 bbWeight=0.50 PerfScore 10.00
G_M36239_IG07: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=80000 {x19}, byref, isz movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 @@ -173,13 +167,12 @@ G_M36239_IG11: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcr arg pop 0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00
-G_M36239_IG12: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #1 LSL #32 - ldrb w20, [x0] - ;; size=16 bbWeight=0.50 PerfScore 2.25
+G_M36239_IG12: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=80000 {x19}, byref + ; byrRegs +[x19] + ldrb w20, [x19, #0x01] + ;; size=4 bbWeight=0.50 PerfScore 1.50
G_M36239_IG13: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
+ ; byrRegs -[x19]
ldrb w0, [fp, #0x20] // [V01 loc1] cbz w0, G_M36239_IG14 ldr x0, [fp, #0x18] // [V00 loc0] @@ -220,7 +213,7 @@ G_M36239_IG18: ; bbWeight=0, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, ret lr ;; size=12 bbWeight=0 PerfScore 0.00
-; Total bytes of code 508, prolog size 24, PerfScore 63.38, instruction count 127, allocated bytes for code 508 (MethodHash=70747270) for method Microsoft.Build.Shared.BuildEnvironmentHelper:CheckIfRunningTests():ubyte (FullOpts)
+; Total bytes of code 472, prolog size 24, PerfScore 61.12, instruction count 118, allocated bytes for code 472 (MethodHash=70747270) for method Microsoft.Build.Shared.BuildEnvironmentHelper:CheckIfRunningTests():ubyte (FullOpts)
; ============================================================ Unwind Info: @@ -231,7 +224,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 116 (0x00074) Actual length = 464 (0x0001d0)
+ Function Length : 107 (0x0006b) Actual length = 428 (0x0001ac)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-40 (-6.10%) : 7792.dasm - FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:GetTyconAttribs(FSharp.Compiler.TcGlobals+TcGlobals,Microsoft.FSharp.Collections.FSharpList1[FSharp.Compiler.TypedTree+Attrib]):System.Tuple5ubyte,ubyte,ubyte,ubyte,ubyte

@@ -8,9 +8,9 @@ ; 0 inlinees with PGO data; 22 single block inlinees; 5 inlinees without PGO data ; Final local variable assignments ;
-; V00 arg0 [V00,T10] ( 12, 12 ) ref -> x19 class-hnd single-def <FSharp.Compiler.TcGlobals+TcGlobals>
+; V00 arg0 [V00,T15] ( 12, 12 ) ref -> x19 class-hnd single-def <FSharp.Compiler.TcGlobals+TcGlobals>
; V01 arg1 [V01,T18] ( 7, 7 ) ref -> x20 class-hnd single-def <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]>
-; V02 loc0 [V02,T12] ( 10, 10 ) ref -> registers class-hnd <FSharp.Compiler.TcGlobals+BuiltinAttribInfo>
+; V02 loc0 [V02,T17] ( 10, 10 ) ref -> registers class-hnd <FSharp.Compiler.TcGlobals+BuiltinAttribInfo>
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ; V04 tmp1 [V04,T19] ( 4, 8 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores+GetTyconAttribs@3149> ; V05 tmp2 [V05,T30] ( 2, 4 ) int -> x21 "impAppendStmt" @@ -21,37 +21,37 @@ ; V10 tmp7 [V10,T22] ( 4, 8 ) ref -> x26 class-hnd exact single-def "NewObj constructor temp" <FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores+GetTyconAttribs@3152-3> ; V11 tmp8 [V11,T33] ( 2, 4 ) int -> x25 "impAppendStmt" ; V12 tmp9 [V12,T23] ( 4, 8 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores+GetTyconAttribs@3153-4>
-; V13 tmp10 [V13,T11] ( 7, 14 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte]>
+; V13 tmp10 [V13,T16] ( 7, 14 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte]>
; V14 tmp11 [V14,T34] ( 3, 2 ) ubyte -> x21 "Inline return value spill temp" ; V15 tmp12 [V15,T00] ( 4, 34 ) ref -> x2 class-hnd "Inlining Arg" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V16 tmp13 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ; V17 tmp14 [V17,T24] ( 2, 8 ) ref -> x21 class-hnd "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V18 tmp15 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <FSharp.Compiler.TypedTree+Attrib>
-; V19 tmp16 [V19,T13] ( 2, 10 ) ref -> x23 class-hnd single-def "Inlining Arg" <<unknown class>>
+; V19 tmp16 [V19,T10] ( 3, 18 ) ref -> x23 class-hnd single-def "Inlining Arg" <<unknown class>>
; V20 tmp17 [V20,T35] ( 3, 2 ) ubyte -> x23 "Inline return value spill temp" ; V21 tmp18 [V21,T01] ( 4, 34 ) ref -> x2 class-hnd "Inlining Arg" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V22 tmp19 [V22 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ; V23 tmp20 [V23,T25] ( 2, 8 ) ref -> x23 class-hnd "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V24 tmp21 [V24 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <FSharp.Compiler.TypedTree+Attrib>
-; V25 tmp22 [V25,T14] ( 2, 10 ) ref -> x24 class-hnd single-def "Inlining Arg" <<unknown class>>
+; V25 tmp22 [V25,T11] ( 3, 18 ) ref -> x24 class-hnd single-def "Inlining Arg" <<unknown class>>
; V26 tmp23 [V26,T36] ( 3, 2 ) ubyte -> x24 "Inline return value spill temp" ; V27 tmp24 [V27,T02] ( 4, 34 ) ref -> x2 class-hnd "Inlining Arg" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V28 tmp25 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ; V29 tmp26 [V29,T26] ( 2, 8 ) ref -> x24 class-hnd "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V30 tmp27 [V30 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <FSharp.Compiler.TypedTree+Attrib>
-; V31 tmp28 [V31,T15] ( 2, 10 ) ref -> x25 class-hnd single-def "Inlining Arg" <<unknown class>>
+; V31 tmp28 [V31,T12] ( 3, 18 ) ref -> x25 class-hnd single-def "Inlining Arg" <<unknown class>>
; V32 tmp29 [V32,T37] ( 3, 2 ) ubyte -> x25 "Inline return value spill temp" ; V33 tmp30 [V33,T03] ( 4, 34 ) ref -> x2 class-hnd "Inlining Arg" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V34 tmp31 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ; V35 tmp32 [V35,T27] ( 2, 8 ) ref -> x25 class-hnd "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V36 tmp33 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <FSharp.Compiler.TypedTree+Attrib>
-; V37 tmp34 [V37,T16] ( 2, 10 ) ref -> x26 class-hnd single-def "Inlining Arg" <<unknown class>>
+; V37 tmp34 [V37,T13] ( 3, 18 ) ref -> x26 class-hnd single-def "Inlining Arg" <<unknown class>>
; V38 tmp35 [V38,T38] ( 3, 2 ) ubyte -> x19 "Inline return value spill temp" ; V39 tmp36 [V39,T04] ( 4, 34 ) ref -> x20 class-hnd "Inlining Arg" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V40 tmp37 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ; V41 tmp38 [V41,T28] ( 2, 8 ) ref -> x19 class-hnd "Inline stloc first use temp" <Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]> ;* V42 tmp39 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <FSharp.Compiler.TypedTree+Attrib>
-; V43 tmp40 [V43,T17] ( 2, 10 ) ref -> x22 class-hnd single-def "Inlining Arg" <<unknown class>>
+; V43 tmp40 [V43,T14] ( 3, 18 ) ref -> x22 class-hnd single-def "Inlining Arg" <<unknown class>>
;* V44 tmp41 [V44 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V45 tmp42 [V45 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" ;* V46 tmp43 [V46 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" @@ -115,11 +115,9 @@ G_M41131_IG04: ; bbWeight=4, gcrefRegs=B80004 {x2 x19 x20 x21 x23}, byref ; gcrRegs +[x1] mov x0, x23 ; gcrRegs +[x0]
- movz x2, #0xD1FFAB1E
+ ldr x2, [x23]
; gcrRegs -[x2]
- movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x2, #0x48]
ldr x2, [x2, #0x20] blr x2 ; gcrRegs -[x0-x1] @@ -127,7 +125,7 @@ G_M41131_IG04: ; bbWeight=4, gcrefRegs=B80004 {x2 x19 x20 x21 x23}, byref mov x2, x21 ; gcrRegs +[x2] b G_M41131_IG03
- ;; size=44 bbWeight=4 PerfScore 58.00
+ ;; size=36 bbWeight=4 PerfScore 64.00
G_M41131_IG05: ; bbWeight=0.50, gcrefRegs=180000 {x19 x20}, byrefRegs=0000 {}, byref ; gcrRegs -[x2 x21 x23] mov w21, wzr @@ -174,11 +172,9 @@ G_M41131_IG09: ; bbWeight=4, gcrefRegs=1980004 {x2 x19 x20 x23 x24}, byre ; gcrRegs +[x1] mov x0, x24 ; gcrRegs +[x0]
- movz x2, #0xD1FFAB1E
+ ldr x2, [x24]
; gcrRegs -[x2]
- movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x2, #0x48]
ldr x2, [x2, #0x20] blr x2 ; gcrRegs -[x0-x1] @@ -186,7 +182,7 @@ G_M41131_IG09: ; bbWeight=4, gcrefRegs=1980004 {x2 x19 x20 x23 x24}, byre mov x2, x23 ; gcrRegs +[x2] b G_M41131_IG08
- ;; size=44 bbWeight=4 PerfScore 58.00
+ ;; size=36 bbWeight=4 PerfScore 64.00
G_M41131_IG10: ; bbWeight=0.50, gcrefRegs=180000 {x19 x20}, byrefRegs=0000 {}, byref ; gcrRegs -[x2 x23-x24] mov w23, wzr @@ -233,11 +229,9 @@ G_M41131_IG14: ; bbWeight=4, gcrefRegs=3180004 {x2 x19 x20 x24 x25}, byre ; gcrRegs +[x1] mov x0, x25 ; gcrRegs +[x0]
- movz x2, #0xD1FFAB1E
+ ldr x2, [x25]
; gcrRegs -[x2]
- movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x2, #0x48]
ldr x2, [x2, #0x20] blr x2 ; gcrRegs -[x0-x1] @@ -245,7 +239,7 @@ G_M41131_IG14: ; bbWeight=4, gcrefRegs=3180004 {x2 x19 x20 x24 x25}, byre mov x2, x24 ; gcrRegs +[x2] b G_M41131_IG13
- ;; size=44 bbWeight=4 PerfScore 58.00
+ ;; size=36 bbWeight=4 PerfScore 64.00
G_M41131_IG15: ; bbWeight=0.50, gcrefRegs=180000 {x19 x20}, byrefRegs=0000 {}, byref ; gcrRegs -[x2 x24-x25] mov w24, wzr @@ -292,11 +286,9 @@ G_M41131_IG19: ; bbWeight=4, gcrefRegs=6180004 {x2 x19 x20 x25 x26}, byre ; gcrRegs +[x1] mov x0, x26 ; gcrRegs +[x0]
- movz x2, #0xD1FFAB1E
+ ldr x2, [x26]
; gcrRegs -[x2]
- movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x2, #0x48]
ldr x2, [x2, #0x20] blr x2 ; gcrRegs -[x0-x1] @@ -304,7 +296,7 @@ G_M41131_IG19: ; bbWeight=4, gcrefRegs=6180004 {x2 x19 x20 x25 x26}, byre mov x2, x25 ; gcrRegs +[x2] b G_M41131_IG18
- ;; size=44 bbWeight=4 PerfScore 58.00
+ ;; size=36 bbWeight=4 PerfScore 64.00
G_M41131_IG20: ; bbWeight=0.50, gcrefRegs=180000 {x19 x20}, byrefRegs=0000 {}, byref ; gcrRegs -[x2 x25-x26] mov w25, wzr @@ -349,10 +341,8 @@ G_M41131_IG24: ; bbWeight=4, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=00 ; gcrRegs +[x1] mov x0, x22 ; gcrRegs +[x0]
- movz x2, #0xD1FFAB1E - movk x2, #0xD1FFAB1E LSL #16 - movk x2, #1 LSL #32 - ldr x2, [x2]
+ ldr x2, [x22] + ldr x2, [x2, #0x48]
ldr x2, [x2, #0x20] blr x2 ; gcrRegs -[x0-x1 x20] @@ -360,7 +350,7 @@ G_M41131_IG24: ; bbWeight=4, gcrefRegs=580000 {x19 x20 x22}, byrefRegs=00 mov x20, x19 ; gcrRegs +[x20] b G_M41131_IG23
- ;; size=44 bbWeight=4 PerfScore 58.00
+ ;; size=36 bbWeight=4 PerfScore 64.00
G_M41131_IG25: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs -[x19-x20 x22] mov w19, wzr @@ -390,7 +380,7 @@ G_M41131_IG28: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=24 bbWeight=1 PerfScore 6.00
-; Total bytes of code 656, prolog size 24, PerfScore 525.50, instruction count 164, allocated bytes for code 656 (MethodHash=d9045f54) for method FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:GetTyconAttribs(FSharp.Compiler.TcGlobals+TcGlobals,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]):System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte] (FullOpts)
+; Total bytes of code 616, prolog size 24, PerfScore 555.50, instruction count 154, allocated bytes for code 616 (MethodHash=d9045f54) for method FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:GetTyconAttribs(FSharp.Compiler.TcGlobals+TcGlobals,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]):System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte] (FullOpts)
; ============================================================ Unwind Info: @@ -401,7 +391,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 164 (0x000a4) Actual length = 656 (0x000290)
+ Function Length : 154 (0x0009a) Actual length = 616 (0x000268)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

-8 (-5.88%) : 16042.dasm - Roslyn.Utilities.TextKeyedCache`1[System.__Canon]:NextRandom():int:this (FullOpts)

@@ -10,7 +10,7 @@ ; V00 this [V00,T00] ( 4, 3.50) ref -> x19 this class-hnd single-def <Roslyn.Utilities.TextKeyedCache`1[System.__Canon]> ; V01 loc0 [V01,T02] ( 4, 3 ) ref -> x0 class-hnd <System.Random> ;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V03 tmp1 [V03,T01] ( 4, 4 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <System.Random>
+; V03 tmp1 [V03,T01] ( 5, 5 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" <System.Random>
; ; Lcl frame size = 0 @@ -64,12 +64,10 @@ G_M8269_IG05: ; bbWeight=0.50, gcVars=0000000000000000 {}, gcrefRegs=8000 ; byrRegs -[x14] mov x0, x20 ; gcrRegs +[x0]
- movz x1, #0xD1FFAB1E - movk x1, #0xD1FFAB1E LSL #16 - movk x1, #1 LSL #32 - ldr x1, [x1]
+ ldr x1, [x20] + ldr x1, [x1, #0x48]
ldr x1, [x1, #0x20]
- ;; size=76 bbWeight=0.50 PerfScore 9.25
+ ;; size=68 bbWeight=0.50 PerfScore 10.00
G_M8269_IG06: ; bbWeight=0.50, epilog, nogc, extend ldp x19, x20, [sp, #0x10] ldp fp, lr, [sp], #0x20 @@ -77,7 +75,7 @@ G_M8269_IG06: ; bbWeight=0.50, epilog, nogc, extend ; gcr arg pop 0 ;; size=12 bbWeight=0.50 PerfScore 1.50
-; Total bytes of code 136, prolog size 16, PerfScore 23.75, instruction count 34, allocated bytes for code 136 (MethodHash=8258dfb2) for method Roslyn.Utilities.TextKeyedCache`1[System.__Canon]:NextRandom():int:this (FullOpts)
+; Total bytes of code 128, prolog size 16, PerfScore 24.50, instruction count 32, allocated bytes for code 128 (MethodHash=8258dfb2) for method Roslyn.Utilities.TextKeyedCache`1[System.__Canon]:NextRandom():int:this (FullOpts)
; ============================================================ Unwind Info: @@ -88,7 +86,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 34 (0x00022) Actual length = 136 (0x000088)
+ Function Length : 32 (0x00020) Actual length = 128 (0x000080)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+2.13%) : 11236.dasm - SixLabors.ImageSharp.Tests.TestEnvironment:.cctor() (FullOpts)

@@ -41,6 +41,7 @@ G_M41042_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x58]
ldr x1, [x1, #0x28] blr x1 ; gcrRegs +[x0] @@ -78,14 +79,14 @@ G_M41042_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs +[x15] bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=164 bbWeight=1 PerfScore 46.50
+ ;; size=168 bbWeight=1 PerfScore 49.50
G_M41042_IG03: ; bbWeight=1, epilog, nogc, extend ldp x19, x20, [sp, #0x10] ldp fp, lr, [sp], #0x20 ret lr ;; size=12 bbWeight=1 PerfScore 3.00
-; Total bytes of code 188, prolog size 12, PerfScore 52.00, instruction count 47, allocated bytes for code 188 (MethodHash=ae3f5fad) for method SixLabors.ImageSharp.Tests.TestEnvironment:.cctor() (FullOpts)
+; Total bytes of code 192, prolog size 12, PerfScore 55.00, instruction count 48, allocated bytes for code 192 (MethodHash=ae3f5fad) for method SixLabors.ImageSharp.Tests.TestEnvironment:.cctor() (FullOpts)
; ============================================================ Unwind Info: @@ -96,7 +97,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 47 (0x0002f) Actual length = 188 (0x0000bc)
+ Function Length : 48 (0x00030) Actual length = 192 (0x0000c0)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+2.56%) : 3347.dasm - Microsoft.Build.Shared.NativeMethodsShared:get_FrameworkCurrentPath():System.String (FullOpts)

@@ -36,10 +36,11 @@ G_M45653_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr movz x0, #184 movk x0, #0xD1FFAB1E LSL #16 movk x0, #1 LSL #32
- movz x1, #0xD1FFAB1E
+ movz x1, #184
movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x58]
ldr x1, [x1, #0x28] blr x1 ; gcrRegs +[x0] @@ -63,7 +64,7 @@ G_M45653_IG03: ; bbWeight=0.50, gcrefRegs=0000 {}, byrefRegs=0000 {}, byr mov x14, x19 bl CORINFO_HELP_ASSIGN_REF ; gcrRegs -[x0 x15]
- ;; size=108 bbWeight=0.50 PerfScore 12.75
+ ;; size=112 bbWeight=0.50 PerfScore 14.25
G_M45653_IG04: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ldr x0, [x19] ; gcrRegs +[x0] @@ -74,7 +75,7 @@ G_M45653_IG05: ; bbWeight=1, epilog, nogc, extend ret lr ;; size=12 bbWeight=1 PerfScore 4.00
-; Total bytes of code 156, prolog size 12, PerfScore 27.75, instruction count 39, allocated bytes for code 156 (MethodHash=2cf24daa) for method Microsoft.Build.Shared.NativeMethodsShared:get_FrameworkCurrentPath():System.String (FullOpts)
+; Total bytes of code 160, prolog size 12, PerfScore 29.25, instruction count 40, allocated bytes for code 160 (MethodHash=2cf24daa) for method Microsoft.Build.Shared.NativeMethodsShared:get_FrameworkCurrentPath():System.String (FullOpts)
; ============================================================ Unwind Info: @@ -85,7 +86,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 39 (0x00027) Actual length = 156 (0x00009c)
+ Function Length : 40 (0x00028) Actual length = 160 (0x0000a0)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

+4 (+4.55%) : 3310.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)

@@ -27,6 +27,7 @@ G_M26176_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
+ ldr x1, [x1, #0x58]
ldr x1, [x1, #0x28] blr x1 ; gcrRegs +[x0] @@ -39,13 +40,13 @@ G_M26176_IG02: ; bbWeight=1, gcrefRegs=0000 {}, byrefRegs=0000 {}, byref movk x1, #0xD1FFAB1E LSL #16 movk x1, #1 LSL #32 ldr x1, [x1]
- ;; size=72 bbWeight=1 PerfScore 20.00
+ ;; size=76 bbWeight=1 PerfScore 23.00
G_M26176_IG03: ; bbWeight=1, epilog, nogc, extend ldp fp, lr, [sp], #0x10 br x1 ;; size=8 bbWeight=1 PerfScore 2.00
-; Total bytes of code 88, prolog size 8, PerfScore 23.50, instruction count 22, allocated bytes for code 88 (MethodHash=6f0499bf) for method Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
+; Total bytes of code 92, prolog size 8, PerfScore 26.50, instruction count 23, allocated bytes for code 92 (MethodHash=6f0499bf) for method Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
; ============================================================ Unwind Info: @@ -56,7 +57,7 @@ Unwind Info: E bit : 0 X bit : 0 Vers : 0
- Function Length : 22 (0x00016) Actual length = 88 (0x000058)
+ Function Length : 23 (0x00017) Actual length = 92 (0x00005c)
---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)

Details

Improvements/regressions per collection

Collection Contexts with diffs Improvements Regressions Same size Improvements (bytes) Regressions (bytes)
benchmarks.run.osx.arm64.checked.mch 93 78 15 0 -1,056 +172
benchmarks.run_pgo.osx.arm64.checked.mch 59 58 1 0 -884 +4
benchmarks.run_tiered.osx.arm64.checked.mch 14 13 1 0 -140 +4
coreclr_tests.run.osx.arm64.checked.mch 1,496 1,299 192 5 -163,772 +2,676
libraries.crossgen2.osx.arm64.checked.mch 0 0 0 0 -0 +0
libraries.pmi.osx.arm64.checked.mch 900 756 144 0 -8,612 +916
libraries_tests.run.osx.arm64.Release.mch 1,773 1,186 587 0 -12,440 +2,376
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 2,667 1,305 1,360 2 -17,636 +7,976
realworld.run.osx.arm64.checked.mch 286 270 16 0 -3,464 +108
7,288 4,965 2,316 7 -208,004 +14,232

Context information

Collection Diffed contexts MinOpts FullOpts Missed, base Missed, diff
benchmarks.run.osx.arm64.checked.mch 25,053 4 25,049 0 (0.00%) 0 (0.00%)
benchmarks.run_pgo.osx.arm64.checked.mch 83,954 48,224 35,730 0 (0.00%) 0 (0.00%)
benchmarks.run_tiered.osx.arm64.checked.mch 48,600 37,748 10,852 0 (0.00%) 0 (0.00%)
coreclr_tests.run.osx.arm64.checked.mch 587,982 360,346 227,636 0 (0.00%) 0 (0.00%)
libraries.crossgen2.osx.arm64.checked.mch 265,044 15 265,029 0 (0.00%) 0 (0.00%)
libraries.pmi.osx.arm64.checked.mch 318,225 18 318,207 0 (0.00%) 0 (0.00%)
libraries_tests.run.osx.arm64.Release.mch 632,615 465,983 166,632 0 (0.00%) 0 (0.00%)
librariestestsnotieredcompilation.run.osx.arm64.Release.mch 300,364 21,535 278,829 0 (0.00%) 6 (0.00%)
realworld.run.osx.arm64.checked.mch 31,600 3 31,597 0 (0.00%) 0 (0.00%)
2,293,437 933,876 1,359,561 0 (0.00%) 6 (0.00%)

jit-analyze output

benchmarks.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: 11256032 (overridden on cmd)
Total bytes of diff: 11255148 (overridden on cmd)
Total bytes of delta: -884 (-0.01 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          36 : 7845.dasm (0.66 % of base)
          36 : 7882.dasm (1.10 % of base)
          24 : 5507.dasm (1.67 % of base)
          24 : 7859.dasm (0.67 % of base)
          12 : 5490.dasm (2.59 % of base)
           4 : 5813.dasm (0.39 % of base)
           4 : 7119.dasm (0.11 % of base)
           4 : 7785.dasm (0.44 % of base)
           4 : 7869.dasm (0.25 % of base)
           4 : 10476.dasm (0.16 % of base)
           4 : 10389.dasm (0.15 % of base)
           4 : 15078.dasm (0.13 % of base)
           4 : 7918.dasm (0.35 % of base)
           4 : 16078.dasm (0.65 % of base)
           4 : 20608.dasm (0.23 % of base)

Top file improvements (bytes):
         -56 : 17286.dasm (-1.20 % of base)
         -56 : 4933.dasm (-2.14 % of base)
         -44 : 3897.dasm (-7.69 % of base)
         -40 : 4939.dasm (-0.29 % of base)
         -40 : 7174.dasm (-0.21 % of base)
         -32 : 12378.dasm (-2.01 % of base)
         -24 : 17919.dasm (-1.17 % of base)
         -24 : 16972.dasm (-1.49 % of base)
         -24 : 16125.dasm (-1.89 % of base)
         -24 : 16126.dasm (-2.01 % of base)
         -20 : 6831.dasm (-2.33 % of base)
         -20 : 7493.dasm (-1.98 % of base)
         -16 : 11181.dasm (-2.03 % of base)
         -16 : 12255.dasm (-1.22 % of base)
         -16 : 582.dasm (-5.88 % of base)
         -16 : 9957.dasm (-0.64 % of base)
         -16 : 16102.dasm (-0.37 % of base)
         -16 : 13611.dasm (-3.12 % of base)
         -16 : 17738.dasm (-1.98 % of base)
         -16 : 19214.dasm (-1.27 % of base)

61 total files with Code Size differences (46 improved, 15 regressed), 0 unchanged.

Top method regressions (bytes):
          36 (0.66 % of base) : 7845.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo:.cctor() (FullOpts)
          36 (1.10 % of base) : 7882.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonReader:.cctor() (FullOpts)
          24 (1.67 % of base) : 5507.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)
          24 (0.67 % of base) : 7859.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonWriter:.cctor() (FullOpts)
          12 (2.59 % of base) : 5490.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
           4 (0.16 % of base) : 10476.dasm - MessagePack.Internal.DynamicObjectTypeBuilder:.cctor() (FullOpts)
           4 (0.15 % of base) : 10389.dasm - MessagePack.Resolvers.DynamicUnionResolver:.cctor() (FullOpts)
           4 (0.23 % of base) : 20608.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (FullOpts)
           4 (0.39 % of base) : 5813.dasm - ProtoBuf.Meta.RuntimeTypeModel:Add(System.Type,ubyte,int):ProtoBuf.Meta.MetaType:this (FullOpts)
           4 (0.65 % of base) : 16078.dasm - Roslyn.Utilities.UICultureUtilities:TryGetCurrentUICultureSetter(byref):ubyte (FullOpts)
           4 (0.13 % of base) : 15078.dasm - System.Xml.Serialization.ReflectionAwareILGen:ILGenForCreateInstance(System.Xml.Serialization.CodeGenerator,System.Type,System.Type) (FullOpts)
           4 (0.11 % of base) : 7119.dasm - System.Xml.Serialization.TypeScope:ImportTypeDesc(System.Type,System.Reflection.MemberInfo,ubyte):System.Xml.Serialization.TypeDesc:this (FullOpts)
           4 (0.44 % of base) : 7785.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:BuildFormatterToAssembly[System.__Canon](Utf8Json.Internal.Emit.DynamicAssembly,Utf8Json.IJsonFormatterResolver,System.Func`2[System.String,System.String],ubyte):System.Object (FullOpts)
           4 (0.35 % of base) : 7918.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:EmitDeserializeValue(System.Reflection.Emit.ILGenerator,Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+DeserializeInfo,int,System.Func`3[int,Utf8Json.Internal.Emit.MetaMember,ubyte],Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField) (FullOpts)
           4 (0.25 % of base) : 7869.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:EmitSerializeValue(System.Reflection.TypeInfo,Utf8Json.Internal.Emit.MetaMember,System.Reflection.Emit.ILGenerator,int,System.Func`3[int,Utf8Json.Internal.Emit.MetaMember,ubyte],Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField) (FullOpts)

Top method improvements (bytes):
         -56 (-1.20 % of base) : 17286.dasm - Microsoft.CodeAnalysis.CSharp.Binder:<CreateConversion>g__checkConstraintLanguageVersionAndRuntimeSupportForConversion|210_2(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -56 (-2.14 % of base) : 4933.dasm - System.Net.Http.HttpConnectionPool:ReturnHttp11Connection(System.Net.Http.HttpConnection,ubyte,System.Net.Http.HttpConnectionPool+HttpConnectionWaiter`1[System.Net.Http.HttpConnection]):this (FullOpts)
         -44 (-7.69 % of base) : 3897.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (FullOpts)
         -40 (-0.29 % of base) : 4939.dasm - System.Net.Http.HttpConnection+<SendAsync>d__57:MoveNext():this (FullOpts)
         -40 (-0.21 % of base) : 7174.dasm - System.Xml.Serialization.XmlReflectionImporter:ImportAccessorMapping(System.Xml.Serialization.MemberMapping,System.Xml.Serialization.FieldModel,System.Xml.Serialization.XmlAttributes,System.String,System.Type,ubyte,ubyte,System.Xml.Serialization.RecursionLimiter):this (FullOpts)
         -32 (-2.01 % of base) : 12378.dasm - System.Xml.XmlBinaryNodeWriter:UnsafeWriteText(ulong,int):this (FullOpts)
         -24 (-1.17 % of base) : 17919.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.MethodSymbol:AddSynthesizedReturnTypeAttributes(Microsoft.CodeAnalysis.CSharp.Emit.PEModuleBuilder,byref):this (FullOpts)
         -24 (-1.89 % of base) : 16125.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceAssemblySymbol:ReportDiagnosticsForSynthesizedAttributes(Microsoft.CodeAnalysis.CSharp.CSharpCompilation,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag) (FullOpts)
         -24 (-2.01 % of base) : 16126.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceAssemblySymbol:ReportDiagnosticsForUnsafeSynthesizedAttributes(Microsoft.CodeAnalysis.CSharp.CSharpCompilation,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag) (FullOpts)
         -24 (-1.49 % of base) : 16972.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:CheckForRequiredMemberAttribute(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -20 (-2.33 % of base) : 6831.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateGet[System.__Canon](System.Reflection.PropertyInfo):System.Func`2[System.__Canon,System.__Canon]:this (FullOpts)
         -20 (-1.98 % of base) : 7493.dasm - System.Reflection.RuntimeModule:ResolveMethod(int,System.Type[],System.Type[]):System.Reflection.MethodBase:this (FullOpts)
         -16 (-1.98 % of base) : 17738.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilation:CheckIfAttributeShouldBeEmbedded(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,Microsoft.CodeAnalysis.Location,int,int,System.Nullable`1[int]):ubyte:this (FullOpts)
         -16 (-0.37 % of base) : 16102.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilationOptions:ValidateOptions(Microsoft.CodeAnalysis.PooledObjects.ArrayBuilder`1[Microsoft.CodeAnalysis.Diagnostic]):this (FullOpts)
         -16 (-1.27 % of base) : 19214.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitLocalDeclarationStatement(Microsoft.CodeAnalysis.CSharp.Syntax.LocalDeclarationStatementSyntax):this (FullOpts)
         -16 (-1.22 % of base) : 12255.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateSet[System.__Canon](System.Reflection.PropertyInfo):System.Action`2[System.__Canon,System.__Canon]:this (FullOpts)
         -16 (-0.64 % of base) : 9957.dasm - Sigil.Emit`1[System.__Canon]:Call(System.Reflection.MethodInfo,System.Type[]):Sigil.Emit`1[System.__Canon]:this (FullOpts)
         -16 (-2.03 % of base) : 11181.dasm - System.IO.Compression.Brotli:Compress_WithState():System.Span`1[ubyte]:this (FullOpts)
         -16 (-3.12 % of base) : 13611.dasm - System.IO.Compression.Brotli:Decompress_WithState():System.Span`1[ubyte]:this (FullOpts)
         -16 (-5.88 % of base) : 582.dasm - System.IO.MemoryMappedFiles.MemoryMappedFile:Dispose(ubyte):this (FullOpts)

Top method regressions (percentages):
          12 (2.59 % of base) : 5490.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
          24 (1.67 % of base) : 5507.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)
          36 (1.10 % of base) : 7882.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonReader:.cctor() (FullOpts)
          24 (0.67 % of base) : 7859.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo+JsonWriter:.cctor() (FullOpts)
          36 (0.66 % of base) : 7845.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+EmitInfo:.cctor() (FullOpts)
           4 (0.65 % of base) : 16078.dasm - Roslyn.Utilities.UICultureUtilities:TryGetCurrentUICultureSetter(byref):ubyte (FullOpts)
           4 (0.44 % of base) : 7785.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:BuildFormatterToAssembly[System.__Canon](Utf8Json.Internal.Emit.DynamicAssembly,Utf8Json.IJsonFormatterResolver,System.Func`2[System.String,System.String],ubyte):System.Object (FullOpts)
           4 (0.39 % of base) : 5813.dasm - ProtoBuf.Meta.RuntimeTypeModel:Add(System.Type,ubyte,int):ProtoBuf.Meta.MetaType:this (FullOpts)
           4 (0.35 % of base) : 7918.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:EmitDeserializeValue(System.Reflection.Emit.ILGenerator,Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder+DeserializeInfo,int,System.Func`3[int,Utf8Json.Internal.Emit.MetaMember,ubyte],Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField) (FullOpts)
           4 (0.25 % of base) : 7869.dasm - Utf8Json.Resolvers.Internal.DynamicObjectTypeBuilder:EmitSerializeValue(System.Reflection.TypeInfo,Utf8Json.Internal.Emit.MetaMember,System.Reflection.Emit.ILGenerator,int,System.Func`3[int,Utf8Json.Internal.Emit.MetaMember,ubyte],Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField,Utf8Json.Internal.Emit.ArgumentField) (FullOpts)
           4 (0.23 % of base) : 20608.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (FullOpts)
           4 (0.16 % of base) : 10476.dasm - MessagePack.Internal.DynamicObjectTypeBuilder:.cctor() (FullOpts)
           4 (0.15 % of base) : 10389.dasm - MessagePack.Resolvers.DynamicUnionResolver:.cctor() (FullOpts)
           4 (0.13 % of base) : 15078.dasm - System.Xml.Serialization.ReflectionAwareILGen:ILGenForCreateInstance(System.Xml.Serialization.CodeGenerator,System.Type,System.Type) (FullOpts)
           4 (0.11 % of base) : 7119.dasm - System.Xml.Serialization.TypeScope:ImportTypeDesc(System.Type,System.Reflection.MemberInfo,ubyte):System.Xml.Serialization.TypeDesc:this (FullOpts)

Top method improvements (percentages):
         -12 (-21.43 % of base) : 12391.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
         -12 (-16.67 % of base) : 6727.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
          -8 (-14.29 % of base) : 9492.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)
          -8 (-10.53 % of base) : 9280.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (FullOpts)
          -8 (-8.33 % of base) : 18704.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (FullOpts)
          -8 (-8.00 % of base) : 9510.dasm - System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (FullOpts)
         -44 (-7.69 % of base) : 3897.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (FullOpts)
          -8 (-7.14 % of base) : 9482.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_Handle():long:this (FullOpts)
         -16 (-5.88 % of base) : 582.dasm - System.IO.MemoryMappedFiles.MemoryMappedFile:Dispose(ubyte):this (FullOpts)
          -8 (-4.17 % of base) : 870.dasm - System.Text.UnicodeEncoding:.cctor() (FullOpts)
          -8 (-4.17 % of base) : 12382.dasm - System.Xml.XmlBinaryNodeWriter:WriteDateTimeText(System.DateTime):this (FullOpts)
         -16 (-3.64 % of base) : 20364.dasm - System.Threading.Tests.Perf_Timer:CleanupShortScheduleAndDisposeWithFiringTimers():this (FullOpts)
          -8 (-3.33 % of base) : 12501.dasm - System.Xml.XmlBaseReader:Close():this (FullOpts)
         -16 (-3.12 % of base) : 13611.dasm - System.IO.Compression.Brotli:Decompress_WithState():System.Span`1[ubyte]:this (FullOpts)
         -12 (-3.09 % of base) : 4844.dasm - System.Net.Http.HttpConnectionPool+RequestQueue`1[System.__Canon]:PruneCompletedRequestsFromHeadOfQueue(System.Net.Http.HttpConnectionPool):this (FullOpts)
          -8 (-2.94 % of base) : 17735.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceModuleSymbol:<RequiresRefSafetyRulesAttribute>g__isFeatureDisabled|62_0(Microsoft.CodeAnalysis.CSharp.CSharpCompilation):ubyte (FullOpts)
          -8 (-2.74 % of base) : 20314.dasm - System.Diagnostics.ProcessWaitState:Dispose():this (FullOpts)
          -8 (-2.70 % of base) : 5037.dasm - System.Net.Http.HttpConnection:ReturnConnectionToPool():this (FullOpts)
          -8 (-2.38 % of base) : 5447.dasm - System.Threading.ManualResetEventSlim:Dispose(ubyte):this (FullOpts)
         -20 (-2.33 % of base) : 6831.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateGet[System.__Canon](System.Reflection.PropertyInfo):System.Func`2[System.__Canon,System.__Canon]:this (FullOpts)


benchmarks.run_pgo.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: 34290048 (overridden on cmd)
Total bytes of diff: 34289168 (overridden on cmd)
Total bytes of delta: -880 (-0.00 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
           4 : 67280.dasm (0.23 % of base)

Top file improvements (bytes):
         -16 : 10551.dasm (-0.42 % of base)
         -16 : 30931.dasm (-0.83 % of base)
         -16 : 32224.dasm (-0.42 % of base)
         -16 : 41428.dasm (-0.41 % of base)
         -16 : 54846.dasm (-0.41 % of base)
         -16 : 61714.dasm (-0.42 % of base)
         -16 : 67212.dasm (-0.41 % of base)
         -16 : 72911.dasm (-0.41 % of base)
         -16 : 73445.dasm (-0.41 % of base)
         -16 : 76349.dasm (-0.42 % of base)
         -16 : 76590.dasm (-0.41 % of base)
         -16 : 83775.dasm (-0.41 % of base)
         -16 : 20995.dasm (-0.42 % of base)
         -16 : 24272.dasm (-0.41 % of base)
         -16 : 75153.dasm (-0.42 % of base)
         -16 : 76727.dasm (-0.41 % of base)
         -16 : 81701.dasm (-0.41 % of base)
         -16 : 10848.dasm (-0.41 % of base)
         -16 : 31562.dasm (-0.42 % of base)
         -16 : 36954.dasm (-0.42 % of base)

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

Top method regressions (bytes):
           4 (0.23 % of base) : 67280.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

Top method improvements (bytes):
         -16 (-0.83 % of base) : 30931.dasm - System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
         -16 (-0.42 % of base) : 10551.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 32224.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 41428.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 54846.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 61714.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 67212.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 72911.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 73445.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 76349.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 76590.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 83775.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 20995.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 24272.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 75153.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 76727.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 81701.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 10848.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 31562.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 36954.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)

Top method regressions (percentages):
           4 (0.23 % of base) : 67280.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

Top method improvements (percentages):
         -16 (-0.83 % of base) : 30931.dasm - System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
          -8 (-0.68 % of base) : 53389.dasm - Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag:ReportUseSite(Microsoft.CodeAnalysis.CSharp.Symbol,Microsoft.CodeAnalysis.SyntaxNode):ubyte:this (Tier1)
         -16 (-0.48 % of base) : 55064.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 56027.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 32224.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 61714.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 20995.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 75153.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 36954.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 10551.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 76349.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 31562.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 26084.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 75501.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.42 % of base) : 75687.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 54846.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 67212.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 73445.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 76590.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -16 (-0.41 % of base) : 83775.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)


benchmarks.run_tiered.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: 15676392 (overridden on cmd)
Total bytes of diff: 15676256 (overridden on cmd)
Total bytes of delta: -136 (-0.00 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
           4 : 42512.dasm (0.23 % of base)

Top file improvements (bytes):
         -16 : 25384.dasm (-0.87 % of base)
         -16 : 40642.dasm (-1.27 % of base)
         -16 : 40645.dasm (-2.37 % of base)
         -16 : 42002.dasm (-2.72 % of base)
         -12 : 29589.dasm (-0.11 % of base)
          -8 : 10581.dasm (-0.35 % of base)
          -8 : 23006.dasm (-0.73 % of base)
          -8 : 27090.dasm (-10.53 % of base)
          -8 : 29532.dasm (-8.00 % of base)
          -8 : 23374.dasm (-14.29 % of base)
          -8 : 27179.dasm (-7.14 % of base)
          -8 : 23367.dasm (-0.77 % of base)
          -8 : 29531.dasm (-8.00 % of base)

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

Top method regressions (bytes):
           4 (0.23 % of base) : 42512.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

Top method improvements (bytes):
         -16 (-1.27 % of base) : 40642.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitLocalDeclarationStatement(Microsoft.CodeAnalysis.CSharp.Syntax.LocalDeclarationStatementSyntax):this (Tier1)
         -16 (-2.37 % of base) : 40645.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitVariableDeclarator(Microsoft.CodeAnalysis.CSharp.Syntax.VariableDeclaratorSyntax):this (Tier1)
         -16 (-0.87 % of base) : 25384.dasm - System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
         -16 (-2.72 % of base) : 42002.dasm - System.Threading.Tests.Perf_Timer:CleanupShortScheduleAndDisposeWithFiringTimers():this (Tier1-OSR)
         -12 (-0.11 % of base) : 29589.dasm - System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)
          -8 (-14.29 % of base) : 23374.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (Tier1)
          -8 (-0.77 % of base) : 23367.dasm - System.Net.Security.SslStream:GenerateToken(System.ReadOnlySpan`1[ubyte]):System.Net.Security.ProtocolToken:this (Tier1)
          -8 (-8.00 % of base) : 29531.dasm - System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (Tier1)
          -8 (-8.00 % of base) : 29532.dasm - System.Net.Security.SslStream:get_IsValidContext():ubyte:this (Tier1)
          -8 (-0.35 % of base) : 10581.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
          -8 (-7.14 % of base) : 27179.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_Handle():long:this (Tier1)
          -8 (-10.53 % of base) : 27090.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (Tier1)
          -8 (-0.73 % of base) : 23006.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:ParsePkcs12(System.ReadOnlySpan`1[ubyte]):this (Tier1)

Top method regressions (percentages):
           4 (0.23 % of base) : 42512.dasm - Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSimpleStructWithProperties:Read2_SimpleStructWithProperties(ubyte):MicroBenchmarks.Serializers.SimpleStructWithProperties:this (Tier0-FullOpts)

Top method improvements (percentages):
          -8 (-14.29 % of base) : 23374.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (Tier1)
          -8 (-10.53 % of base) : 27090.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (Tier1)
          -8 (-8.00 % of base) : 29531.dasm - System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (Tier1)
          -8 (-8.00 % of base) : 29532.dasm - System.Net.Security.SslStream:get_IsValidContext():ubyte:this (Tier1)
          -8 (-7.14 % of base) : 27179.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_Handle():long:this (Tier1)
         -16 (-2.72 % of base) : 42002.dasm - System.Threading.Tests.Perf_Timer:CleanupShortScheduleAndDisposeWithFiringTimers():this (Tier1-OSR)
         -16 (-2.37 % of base) : 40645.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitVariableDeclarator(Microsoft.CodeAnalysis.CSharp.Syntax.VariableDeclaratorSyntax):this (Tier1)
         -16 (-1.27 % of base) : 40642.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitLocalDeclarationStatement(Microsoft.CodeAnalysis.CSharp.Syntax.LocalDeclarationStatementSyntax):this (Tier1)
         -16 (-0.87 % of base) : 25384.dasm - System.Formats.Tar.TarHeader:GenerateExtendedAttributesDataStream(System.Collections.Generic.Dictionary`2[System.String,System.String]):System.IO.MemoryStream (Tier0-FullOpts)
          -8 (-0.77 % of base) : 23367.dasm - System.Net.Security.SslStream:GenerateToken(System.ReadOnlySpan`1[ubyte]):System.Net.Security.ProtocolToken:this (Tier1)
          -8 (-0.73 % of base) : 23006.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:ParsePkcs12(System.ReadOnlySpan`1[ubyte]):this (Tier1)
          -8 (-0.35 % of base) : 10581.dasm - System.RuntimeType+RuntimeTypeCache+MemberInfoCache`1[System.__Canon]:PopulateProperties(System.RuntimeType+RuntimeTypeCache+Filter,System.RuntimeType,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.Reflection.RuntimePropertyInfo]],System.Span`1[ubyte],ubyte,byref):this (Tier1)
         -12 (-0.11 % of base) : 29589.dasm - System.Diagnostics.Tracing.ManifestBuilder:CreateManifestString():System.String:this (Tier0-FullOpts)

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


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: 491746024 (overridden on cmd)
Total bytes of diff: 491584928 (overridden on cmd)
Total bytes of delta: -161096 (-0.03 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
         148 : 228937.dasm (1.69 % of base)
         148 : 229299.dasm (1.97 % of base)
         148 : 229009.dasm (1.69 % of base)
         148 : 228364.dasm (1.97 % of base)
         148 : 229198.dasm (1.67 % of base)
         148 : 186789.dasm (1.67 % of base)
         148 : 187037.dasm (1.68 % of base)
         148 : 187642.dasm (1.97 % of base)
         148 : 228840.dasm (1.67 % of base)
          48 : 313764.dasm (0.80 % of base)
          48 : 188615.dasm (1.66 % of base)
          24 : 228872.dasm (1.54 % of base)
          24 : 228951.dasm (1.49 % of base)
          24 : 187060.dasm (1.58 % of base)
          24 : 187100.dasm (1.51 % of base)
          24 : 187116.dasm (1.50 % of base)
          24 : 187648.dasm (1.49 % of base)
          24 : 187659.dasm (1.48 % of base)
          24 : 228368.dasm (1.57 % of base)
          24 : 228747.dasm (1.59 % of base)

Top file improvements (bytes):
        -512 : 290285.dasm (-1.86 % of base)
        -512 : 291195.dasm (-1.80 % of base)
        -504 : 290700.dasm (-1.78 % of base)
        -504 : 292047.dasm (-1.83 % of base)
        -496 : 290069.dasm (-1.83 % of base)
        -496 : 290883.dasm (-1.86 % of base)
        -488 : 291775.dasm (-1.75 % of base)
        -480 : 262926.dasm (-1.85 % of base)
        -480 : 291083.dasm (-1.83 % of base)
        -472 : 290002.dasm (-1.64 % of base)
        -472 : 290916.dasm (-1.83 % of base)
        -464 : 290252.dasm (-1.77 % of base)
        -456 : 263354.dasm (-1.86 % of base)
        -456 : 263806.dasm (-1.78 % of base)
        -456 : 292013.dasm (-1.64 % of base)
        -448 : 284476.dasm (-1.98 % of base)
        -440 : 290119.dasm (-1.67 % of base)
        -440 : 291743.dasm (-1.68 % of base)
        -440 : 263310.dasm (-1.75 % of base)
        -440 : 290153.dasm (-1.65 % of base)

92 total files with Code Size differences (52 improved, 40 regressed), 5 unchanged.

Top method regressions (bytes):
         148 (1.67 % of base) : 229198.dasm - Test_AbstractBase02:TestEntryPoint():int (FullOpts)
         148 (1.67 % of base) : 186789.dasm - Test_BaseClass02:TestEntryPoint():int (FullOpts)
         148 (1.68 % of base) : 187037.dasm - Test_class01:TestEntryPoint():int (FullOpts)
         148 (1.67 % of base) : 228840.dasm - Test_NestedBaseClass05:TestEntryPoint():int (FullOpts)
         148 (1.69 % of base) : 229009.dasm - Test_NestedClass01:TestEntryPoint():int (FullOpts)
         148 (1.69 % of base) : 228937.dasm - Test_NestedClass03:TestEntryPoint():int (FullOpts)
         148 (1.97 % of base) : 229299.dasm - Test_NestedStruct01:TestEntryPoint():int (FullOpts)
         148 (1.97 % of base) : 228364.dasm - Test_NestedStruct03:TestEntryPoint():int (FullOpts)
         148 (1.97 % of base) : 187642.dasm - Test_struct01:TestEntryPoint():int (FullOpts)
          48 (0.80 % of base) : 313764.dasm - Program:RuntimeMethodHandle():ubyte (FullOpts)
          48 (1.66 % of base) : 188615.dasm - VectorTest:TestEntryPoint():int (FullOpts)
          24 (1.57 % of base) : 228368.dasm - Test_AbstractBase06:TestEntryPoint():int (FullOpts)
          24 (1.58 % of base) : 187060.dasm - Test_Class01:TestEntryPoint():int (FullOpts)
          24 (1.51 % of base) : 187100.dasm - Test_Class02:TestEntryPoint():int (FullOpts)
          24 (1.50 % of base) : 187116.dasm - Test_Class03:TestEntryPoint():int (FullOpts)
          24 (1.59 % of base) : 228747.dasm - Test_NestedInterface01:TestEntryPoint():int (FullOpts)
          24 (1.54 % of base) : 228872.dasm - Test_NestedInterface06:TestEntryPoint():int (FullOpts)
          24 (1.49 % of base) : 228951.dasm - Test_NestedInterface08:TestEntryPoint():int (FullOpts)
          24 (1.49 % of base) : 187648.dasm - Test_Struct02:TestEntryPoint():int (FullOpts)
          24 (1.48 % of base) : 187659.dasm - Test_Struct03:TestEntryPoint():int (FullOpts)

Top method improvements (bytes):
        -512 (-1.86 % of base) : 290285.dasm - Generated908:MethodCallingTest() (FullOpts)
        -512 (-1.80 % of base) : 291195.dasm - Generated934:MethodCallingTest() (FullOpts)
        -504 (-1.78 % of base) : 290700.dasm - Generated920:MethodCallingTest() (FullOpts)
        -504 (-1.83 % of base) : 292047.dasm - Generated960:MethodCallingTest() (FullOpts)
        -496 (-1.83 % of base) : 290069.dasm - Generated902:MethodCallingTest() (FullOpts)
        -496 (-1.86 % of base) : 290883.dasm - Generated925:MethodCallingTest() (FullOpts)
        -488 (-1.75 % of base) : 291775.dasm - Generated952:MethodCallingTest() (FullOpts)
        -480 (-1.85 % of base) : 262926.dasm - Generated1055:MethodCallingTest() (FullOpts)
        -480 (-1.83 % of base) : 291083.dasm - Generated931:MethodCallingTest() (FullOpts)
        -472 (-1.64 % of base) : 290002.dasm - Generated900:MethodCallingTest() (FullOpts)
        -472 (-1.83 % of base) : 290916.dasm - Generated926:MethodCallingTest() (FullOpts)
        -464 (-1.77 % of base) : 290252.dasm - Generated907:MethodCallingTest() (FullOpts)
        -456 (-1.86 % of base) : 263354.dasm - Generated1065:MethodCallingTest() (FullOpts)
        -456 (-1.78 % of base) : 263806.dasm - Generated1076:MethodCallingTest() (FullOpts)
        -456 (-1.64 % of base) : 292013.dasm - Generated959:MethodCallingTest() (FullOpts)
        -448 (-1.98 % of base) : 284476.dasm - Generated718:MethodCallingTest() (FullOpts)
        -440 (-1.75 % of base) : 263310.dasm - Generated1064:MethodCallingTest() (FullOpts)
        -440 (-1.67 % of base) : 290119.dasm - Generated903:MethodCallingTest() (FullOpts)
        -440 (-1.65 % of base) : 290153.dasm - Generated904:MethodCallingTest() (FullOpts)
        -440 (-1.68 % of base) : 291743.dasm - Generated951:MethodCallingTest() (FullOpts)

Top method regressions (percentages):
           4 (4.55 % of base) : 313929.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
          12 (4.05 % of base) : 197223.dasm - ForwardSubCallArgInterference3:TestEntryPoint():int (FullOpts)
           4 (3.57 % of base) : 252616.dasm - Runtime_95347:Test():int (FullOpts)
           4 (3.23 % of base) : 296449.dasm - ILVerify.Verifier+<>c:<.ctor>b__5_0():System.Resources.ResourceManager:this (FullOpts)
           4 (2.94 % of base) : 187244.dasm - Gen`1[System.Guid]:DefaultTest(ubyte):ubyte:this (FullOpts)
          12 (2.65 % of base) : 187112.dasm - Gen`3[int,double,System.Guid]:InstVerify(System.Type,System.Type,System.Type):ubyte:this (FullOpts)
          12 (2.65 % of base) : 187122.dasm - Gen`3[int,double,System.Guid]:InstVerify(System.Type,System.Type,System.Type):ubyte:this (FullOpts)
          12 (2.65 % of base) : 186805.dasm - GenBase`3[int,double,System.Guid]:InstVerify(System.Type,System.Type,System.Type):ubyte:this (FullOpts)
          12 (2.65 % of base) : 229173.dasm - GenBase`3[int,double,System.Guid]:InstVerify(System.Type,System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.63 % of base) : 187109.dasm - Gen`2[double,System.Guid]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.60 % of base) : 187096.dasm - Gen`2[int,int]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.60 % of base) : 186801.dasm - GenBase`2[int,int]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.60 % of base) : 186795.dasm - GenBase`2[int,int]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.60 % of base) : 228999.dasm - GenBase`2[int,int]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           8 (2.60 % of base) : 228765.dasm - GenBase`2[int,int]:InstVerify(System.Type,System.Type):ubyte:this (FullOpts)
           4 (2.56 % of base) : 314189.dasm - Microsoft.Build.Framework.NativeMethods:get_FrameworkCurrentPath():System.String (FullOpts)
           4 (2.44 % of base) : 187039.dasm - Gen`1[ValX1`1[ValX1`1[ValX1`1[ValX1`1[System.Guid]]]]]:InstVerify(System.Type):ubyte:this (FullOpts)
           4 (2.44 % of base) : 229200.dasm - GenBase`1[ValX1`1[ValX1`1[ValX1`1[ValX1`1[System.Guid]]]]]:InstVerify(System.Type):ubyte:this (FullOpts)
           4 (2.44 % of base) : 186791.dasm - GenBase`1[ValX1`1[ValX1`1[ValX1`1[ValX1`1[System.Guid]]]]]:InstVerify(System.Type):ubyte:this (FullOpts)
           4 (2.44 % of base) : 228911.dasm - Outer`1+GenBase`1[ValX1`1[ValX1`1[ValX1`1[ValX1`1[System.Guid]]]],ValX1`1[ValX1`1[ValX1`1[ValX1`1[System.Guid]]]]]:InstVerify(System.Type):ubyte:this (FullOpts)

Top method improvements (percentages):
        -108 (-26.21 % of base) : 257045.dasm - testout1:Func(testout1+CL,testout1+VT):long (FullOpts)
         -16 (-23.53 % of base) : 254468.dasm - GitHub_18497:Test():System.Numerics.Vector`1[float] (FullOpts)
         -36 (-22.50 % of base) : 256825.dasm - bug1:TestEntryPoint() (FullOpts)
         -96 (-16.90 % of base) : 239994.dasm - Test_200w1d_02.testout1:TestEntryPoint():int (FullOpts)
         -12 (-16.67 % of base) : 200991.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
         -24 (-14.29 % of base) : 186495.dasm - StaticValueField:TestEntryPoint():int (FullOpts)
         -16 (-13.79 % of base) : 248062.dasm - Test_b18049:main():int (FullOpts)
         -16 (-13.33 % of base) : 197988.dasm - Q:TestEntryPoint():int (FullOpts)
          -8 (-13.33 % of base) : 254555.dasm - Test_GitHub_19222:main():int (FullOpts)
         -52 (-12.75 % of base) : 257033.dasm - bug1:TestEntryPoint() (FullOpts)
         -12 (-11.54 % of base) : 313889.dasm - Microsoft.Build.Framework.NativeMethods:get_IsWindows():ubyte (FullOpts)
         -12 (-10.71 % of base) : 254471.dasm - GitHub_18522:TestEntryPoint():int (FullOpts)
          -8 (-10.53 % of base) : 223141.dasm - AssemblyToLoad.Program:UseDependentAssembly():System.Reflection.Assembly (FullOpts)
          -8 (-10.53 % of base) : 222983.dasm - BinderTracingTests.BinderTracingTest:UseDependentAssembly():System.Reflection.Assembly (FullOpts)
         -16 (-10.26 % of base) : 223082.dasm - CMain:RunTest_ImplicitOverride5():ubyte (FullOpts)
         -16 (-10.26 % of base) : 227229.dasm - CMain:RunTest_MoreDerived2():ubyte (FullOpts)
         -16 (-10.26 % of base) : 227977.dasm - CMain:RunTest1():ubyte (FullOpts)
         -16 (-10.26 % of base) : 227206.dasm - CMain:RunTest3():ubyte (FullOpts)
         -16 (-10.26 % of base) : 227986.dasm - CMain:RunTest5():ubyte (FullOpts)
         -16 (-10.26 % of base) : 223062.dasm - CMain:RunTest5():ubyte (FullOpts)


libraries.pmi.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: 81113832 (overridden on cmd)
Total bytes of diff: 81106136 (overridden on cmd)
Total bytes of delta: -7696 (-0.01 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          32 : 266136.dasm (0.88 % of base)
          24 : 305815.dasm (1.53 % of base)
          16 : 266135.dasm (0.46 % of base)
          16 : 301706.dasm (0.69 % of base)
          16 : 56735.dasm (1.31 % of base)
          16 : 56736.dasm (1.78 % of base)
          16 : 56354.dasm (0.67 % of base)
          16 : 56734.dasm (1.29 % of base)
          12 : 249196.dasm (1.52 % of base)
          12 : 249206.dasm (1.06 % of base)
          12 : 255790.dasm (0.53 % of base)
          12 : 301670.dasm (0.54 % of base)
          12 : 305778.dasm (1.21 % of base)
          12 : 305779.dasm (2.59 % of base)
          12 : 60407.dasm (2.91 % of base)
          12 : 301700.dasm (0.81 % of base)
          12 : 305777.dasm (1.23 % of base)
          12 : 249208.dasm (0.97 % of base)
          12 : 285369.dasm (0.83 % of base)
          12 : 301676.dasm (1.28 % of base)

Top file improvements (bytes):
         -88 : 70137.dasm (-1.31 % of base)
         -64 : 69224.dasm (-0.77 % of base)
         -60 : 108544.dasm (-2.05 % of base)
         -56 : 108545.dasm (-1.62 % of base)
         -56 : 103794.dasm (-1.13 % of base)
         -56 : 70114.dasm (-1.08 % of base)
         -48 : 132381.dasm (-0.30 % of base)
         -48 : 77752.dasm (-0.88 % of base)
         -48 : 99013.dasm (-1.03 % of base)
         -48 : 69520.dasm (-1.72 % of base)
         -48 : 69588.dasm (-1.48 % of base)
         -44 : 216994.dasm (-7.69 % of base)
         -40 : 108222.dasm (-1.33 % of base)
         -40 : 205888.dasm (-0.21 % of base)
         -40 : 70078.dasm (-1.01 % of base)
         -36 : 70612.dasm (-1.41 % of base)
         -36 : 154583.dasm (-1.27 % of base)
         -32 : 74597.dasm (-1.10 % of base)
         -32 : 102589.dasm (-0.87 % of base)
         -32 : 69509.dasm (-0.72 % of base)

80 total files with Code Size differences (42 improved, 38 regressed), 0 unchanged.

Top method regressions (bytes):
          32 (0.88 % of base) : 266136.dasm - System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:GetMetadataViewProvider[ubyte]():System.Func`2[System.Collections.Generic.IDictionary`2[System.String,System.Object],ubyte] (FullOpts)
          24 (1.53 % of base) : 305815.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:.cctor() (FullOpts)
          16 (0.67 % of base) : 56354.dasm - Microsoft.FSharp.Linq.RuntimeHelpers.Adapters:ConvImmutableTypeToMutableType(Microsoft.FSharp.Linq.RuntimeHelpers.Adapters+ConversionDescription,System.Type):System.Type (FullOpts)
          16 (1.31 % of base) : 56735.dasm - Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter:transBinOp(Microsoft.FSharp.Core.FSharpFunc`2[System.Type,ubyte],Microsoft.FSharp.Quotations.FSharpExpr,Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter+ConvEnv,ubyte,Microsoft.FSharp.Quotations.FSharpExpr,Microsoft.FSharp.Quotations.FSharpExpr,ubyte,Microsoft.FSharp.Core.FSharpFunc`2[System.Tuple`3[System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo],System.Linq.Expressions.BinaryExpression],System.RuntimeMethodHandle):System.Linq.Expressions.Expression (FullOpts)
          16 (1.78 % of base) : 56736.dasm - Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter:transBoolOpNoWitness(Microsoft.FSharp.Core.FSharpFunc`2[System.Type,ubyte],Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter+ConvEnv,ubyte,Microsoft.FSharp.Quotations.FSharpExpr,Microsoft.FSharp.Quotations.FSharpExpr,ubyte,Microsoft.FSharp.Core.FSharpFunc`2[System.Tuple`4[System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,ubyte,System.Reflection.MethodInfo],System.Linq.Expressions.BinaryExpression],System.Reflection.MethodInfo):System.Linq.Expressions.Expression (FullOpts)
          16 (1.29 % of base) : 56734.dasm - Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter:transShiftOp(Microsoft.FSharp.Quotations.FSharpExpr,Microsoft.FSharp.Linq.RuntimeHelpers.LeafExpressionConverter+ConvEnv,ubyte,Microsoft.FSharp.Quotations.FSharpExpr,Microsoft.FSharp.Quotations.FSharpExpr,ubyte,Microsoft.FSharp.Core.FSharpFunc`2[System.Tuple`3[System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Reflection.MethodInfo],System.Linq.Expressions.BinaryExpression],System.RuntimeMethodHandle):System.Linq.Expressions.Expression (FullOpts)
          16 (0.46 % of base) : 266135.dasm - System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:GetMetadataViewProvider[System.__Canon]():System.Func`2[System.__Canon,System.__Canon] (FullOpts)
          16 (0.69 % of base) : 301706.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:RewriteActivator(System.Reflection.TypeInfo,System.Composition.Hosting.Core.CompositeActivator,System.Collections.Generic.IDictionary`2[System.String,System.Object],System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.CompositeActivator:this (FullOpts)
          12 (1.23 % of base) : 305777.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactory[System.__Canon](System.Type[]):Microsoft.Extensions.DependencyInjection.ObjectFactory`1[System.__Canon] (FullOpts)
          12 (1.21 % of base) : 305778.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactory[ubyte](System.Type[]):Microsoft.Extensions.DependencyInjection.ObjectFactory`1[ubyte] (FullOpts)
          12 (2.59 % of base) : 305779.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
          12 (0.83 % of base) : 285369.dasm - Microsoft.Extensions.DependencyInjection.ServiceLookup.ExpressionResolverBuilder:.cctor() (FullOpts)
          12 (2.91 % of base) : 60407.dasm - Microsoft.FSharp.Text.StructuredPrintfImpl.Display:isSetOrMapType(System.Type):ubyte (FullOpts)
          12 (1.52 % of base) : 249196.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateMethodCall[System.__Canon](System.Reflection.MethodBase):Newtonsoft.Json.Utilities.MethodCall`2[System.__Canon,System.__Canon]:this (FullOpts)
          12 (1.06 % of base) : 249206.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateSet[ubyte](System.Reflection.FieldInfo):System.Action`2[ubyte,System.Object]:this (FullOpts)
          12 (0.97 % of base) : 249208.dasm - Newtonsoft.Json.Utilities.ExpressionReflectionDelegateFactory:CreateSet[ubyte](System.Reflection.PropertyInfo):System.Action`2[ubyte,System.Object]:this (FullOpts)
          12 (0.81 % of base) : 301700.dasm - System.Composition.TypedParts.ActivationFeatures.OnImportsSatisfiedFeature:RewriteActivator(System.Reflection.TypeInfo,System.Composition.Hosting.Core.CompositeActivator,System.Collections.Generic.IDictionary`2[System.String,System.Object],System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.CompositeActivator:this (FullOpts)
          12 (0.54 % of base) : 301670.dasm - System.Composition.TypedParts.Discovery.DiscoveredPart:GetActivator(System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.CompositeActivator:this (FullOpts)
          12 (1.28 % of base) : 301676.dasm - System.Composition.TypedParts.Discovery.DiscoveredPropertyExport:GetExportDescriptor(System.Composition.Hosting.Core.CompositeActivator):System.Composition.Hosting.Core.ExportDescriptor:this (FullOpts)
          12 (0.53 % of base) : 255790.dasm - Xunit.Sdk.ExecutionContextHelper:EnsureInitialized() (FullOpts)

Top method improvements (bytes):
         -88 (-1.31 % of base) : 70137.dasm - Microsoft.CodeAnalysis.CSharp.Binder:<BindElementOrIndexerAccess>g__bindInlineArrayElementAccess|500_1(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.BoundExpression,int,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,Microsoft.CodeAnalysis.CSharp.BoundExpression,int,Microsoft.CodeAnalysis.CSharp.Symbols.FieldSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -64 (-0.77 % of base) : 69224.dasm - Microsoft.CodeAnalysis.CSharp.Binder:ConvertCollectionExpression(Microsoft.CodeAnalysis.CSharp.BoundUnconvertedCollectionExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -60 (-2.05 % of base) : 108544.dasm - System.Net.Http.HttpConnectionPool:ReturnHttp11Connection(System.Net.Http.HttpConnection,ubyte,System.Net.Http.HttpConnectionPool+HttpConnectionWaiter`1[System.Net.Http.HttpConnection]):this (FullOpts)
         -56 (-1.13 % of base) : 103794.dasm - Microsoft.CodeAnalysis.CSharp.AsyncRewriter+AsyncIteratorRewriter:VerifyPresenceOfRequiredAPIs(Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -56 (-1.08 % of base) : 70114.dasm - Microsoft.CodeAnalysis.CSharp.Binder:<CreateConversion>g__checkConstraintLanguageVersionAndRuntimeSupportForConversion|210_2(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -56 (-1.62 % of base) : 108545.dasm - System.Net.Http.HttpConnectionPool:ReturnHttp2Connection(System.Net.Http.Http2Connection,ubyte,System.Net.Http.HttpConnectionPool+HttpConnectionWaiter`1[System.Net.Http.Http2Connection]):this (FullOpts)
         -48 (-1.48 % of base) : 69588.dasm - Microsoft.CodeAnalysis.CSharp.Binder:GetDefaultParameterSpecialNoConversion(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -48 (-1.72 % of base) : 69520.dasm - Microsoft.CodeAnalysis.CSharp.Binder:TryBindIndexOrRangeImplicitIndexer(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,byref):ubyte:this (FullOpts)
         -48 (-0.88 % of base) : 77752.dasm - Microsoft.CodeAnalysis.CSharp.LocalRewriter:VisitLockStatement(Microsoft.CodeAnalysis.CSharp.BoundLockStatement):Microsoft.CodeAnalysis.CSharp.BoundNode:this (FullOpts)
         -48 (-1.03 % of base) : 99013.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:EarlyDecodeWellKnownAttribute(byref):System.ValueTuple`2[Microsoft.CodeAnalysis.CSharp.Symbols.CSharpAttributeData,Microsoft.CodeAnalysis.CSharp.BoundAttribute]:this (FullOpts)
         -48 (-0.30 % of base) : 132381.dasm - Microsoft.CodeAnalysis.VisualBasic.Binder:BindFieldAndPropertyInitializers(Microsoft.CodeAnalysis.VisualBasic.Symbols.SourceMemberContainerTypeSymbol,System.Collections.Immutable.ImmutableArray`1[System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.VisualBasic.Symbols.FieldOrPropertyInitializer]],Microsoft.CodeAnalysis.VisualBasic.Symbols.SynthesizedInteractiveInitializerMethod,Microsoft.CodeAnalysis.VisualBasic.BindingDiagnosticBag):System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.VisualBasic.BoundInitializer] (FullOpts)
         -44 (-7.69 % of base) : 216994.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (FullOpts)
         -40 (-1.01 % of base) : 70078.dasm - Microsoft.CodeAnalysis.CSharp.Binder:GetEnumeratorInfoCore(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,byref,ubyte,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,byref):int:this (FullOpts)
         -40 (-1.33 % of base) : 108222.dasm - System.Net.Http.Http2Connection+Http2Stream:OnStatus(int):this (FullOpts)
         -40 (-0.21 % of base) : 205888.dasm - System.Xml.Serialization.XmlReflectionImporter:ImportAccessorMapping(System.Xml.Serialization.MemberMapping,System.Xml.Serialization.FieldModel,System.Xml.Serialization.XmlAttributes,System.String,System.Type,ubyte,ubyte,System.Xml.Serialization.RecursionLimiter):this (FullOpts)
         -36 (-1.41 % of base) : 70612.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitUsingStatement(Microsoft.CodeAnalysis.CSharp.Syntax.UsingStatementSyntax):this (FullOpts)
         -36 (-1.27 % of base) : 154583.dasm - Microsoft.CodeAnalysis.VisualBasic.LocalRewriter:EnsureStringHashFunction(Microsoft.CodeAnalysis.VisualBasic.BoundSelectStatement):this (FullOpts)
         -32 (-0.72 % of base) : 69509.dasm - Microsoft.CodeAnalysis.CSharp.Binder:ConvertToArrayIndex(Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,ubyte,byref):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -32 (-0.87 % of base) : 102589.dasm - Microsoft.CodeAnalysis.CSharp.CodeGen.CodeGenerator:EmitStringSwitchJumpTable(System.Collections.Generic.KeyValuePair`2[Microsoft.CodeAnalysis.ConstantValue,System.Object][],Microsoft.CodeAnalysis.CSharp.Symbols.LabelSymbol,Microsoft.CodeAnalysis.CodeGen.LocalOrParameter,Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol):this (FullOpts)
         -32 (-1.10 % of base) : 74597.dasm - Microsoft.CodeAnalysis.CSharp.MethodBodySynthesizer:ConstructFieldLikeEventAccessorBody_WinRT(Microsoft.CodeAnalysis.CSharp.Symbols.SourceEventSymbol,ubyte,Microsoft.CodeAnalysis.CSharp.CSharpCompilation,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundBlock (FullOpts)

Top method regressions (percentages):
           4 (4.76 % of base) : 266161.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 266165.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 266149.dasm - System.Composition.Hosting.Providers.Lazy.LazyExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 266153.dasm - System.Composition.Hosting.Providers.Lazy.LazyWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 266144.dasm - System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 301709.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)
           4 (4.55 % of base) : 189681.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
           8 (3.85 % of base) : 130389.dasm - Microsoft.CSharp.RuntimeBinder.DynamicMetaObjectProviderDebugView:.cctor() (FullOpts)
           4 (3.85 % of base) : 112047.dasm - Microsoft.Diagnostics.Tracing.Stacks.StackSourceWriterHelper:GetExporterInfo():System.String (FullOpts)
           4 (3.23 % of base) : 223854.dasm - Internal.TypeSystem.TypeSystemException+<>c:<.cctor>b__20_0():System.Resources.ResourceManager:this (FullOpts)
          12 (2.91 % of base) : 60407.dasm - Microsoft.FSharp.Text.StructuredPrintfImpl.Display:isSetOrMapType(System.Type):ubyte (FullOpts)
           4 (2.78 % of base) : 187099.dasm - Microsoft.Build.BackEnd.TaskParameterTypeVerifier:IsAssignableToITask(System.Type):ubyte (FullOpts)
          12 (2.59 % of base) : 305779.dasm - Microsoft.Extensions.DependencyInjection.ActivatorUtilities:CreateFactoryInternal(System.Type,System.Type[],byref,byref,byref) (FullOpts)
           4 (2.56 % of base) : 301675.dasm - System.Composition.TypedParts.Discovery.DiscoveredPart:.cctor() (FullOpts)
           4 (2.33 % of base) : 312271.dasm - CommandLine.Core.ReflectionExtensions:ToTargetType(System.Type):int (FullOpts)
           4 (2.33 % of base) : 109932.dasm - Dia2Lib.DiaLoader:GetDiaSourceObject():Dia2Lib.IDiaDataSource3 (FullOpts)
           4 (2.27 % of base) : 266157.dasm - System.Composition.Hosting.Providers.ImportMany.ImportManyExportDescriptorProvider:.cctor() (FullOpts)
           4 (2.22 % of base) : 301697.dasm - System.Composition.TypedParts.ActivationFeatures.DisposalFeature:RewriteActivator(System.Reflection.TypeInfo,System.Composition.Hosting.Core.CompositeActivator,System.Collections.Generic.IDictionary`2[System.String,System.Object],System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.CompositeActivator:this (FullOpts)
           4 (2.00 % of base) : 240456.dasm - Microsoft.Build.Framework.NativeMethods:get_FrameworkCurrentPath():System.String (FullOpts)
           4 (1.79 % of base) : 255643.dasm - Xunit.Sdk.XunitTestFrameworkDiscoverer:.cctor() (FullOpts)

Top method improvements (percentages):
         -12 (-21.43 % of base) : 290835.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
          -8 (-14.29 % of base) : 172484.dasm - Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary`2[ubyte,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 240940.dasm - Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary`2[ubyte,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 46625.dasm - Microsoft.CodeAnalysis.Collections.ImmutableSegmentedDictionary`2[ubyte,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 175285.dasm - Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)
          -8 (-14.29 % of base) : 49514.dasm - Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)
          -8 (-14.29 % of base) : 310754.dasm - System.ComponentModel.DesignerCategoryAttribute:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 302304.dasm - System.Net.FtpControlStream:get_BannerMessage():System.String:this (FullOpts)
          -8 (-14.29 % of base) : 302306.dasm - System.Net.FtpControlStream:get_ExitMessage():System.String:this (FullOpts)
          -8 (-14.29 % of base) : 302305.dasm - System.Net.FtpControlStream:get_WelcomeMessage():System.String:this (FullOpts)
          -8 (-14.29 % of base) : 287596.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)
          -8 (-14.29 % of base) : 2919.dasm - System.RuntimeTypeHandle:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 15443.dasm - System.Threading.AsyncFlowControl:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 288642.dasm - Xunit.ExecutionSink:WaitForStopEvent(int):ubyte:this (FullOpts)
          -8 (-13.33 % of base) : 285248.dasm - Microsoft.Extensions.DependencyInjection.ServiceProvider:OnCreate(Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCallSite):this (FullOpts)
          -8 (-11.76 % of base) : 310740.dasm - System.ComponentModel.DescriptionAttribute:GetHashCode():int:this (FullOpts)
          -8 (-11.76 % of base) : 310772.dasm - System.ComponentModel.DisplayNameAttribute:GetHashCode():int:this (FullOpts)
          -8 (-11.11 % of base) : 310719.dasm - System.ComponentModel.CategoryAttribute:GetHashCode():int:this (FullOpts)
          -8 (-10.53 % of base) : 229970.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (FullOpts)
         -12 (-10.00 % of base) : 246268.dasm - System.Linq.Expressions.Interpreter.InterpretedFrameInfo:ToString():System.String:this (FullOpts)


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: 313602060 (overridden on cmd)
Total bytes of diff: 313591996 (overridden on cmd)
Total bytes of delta: -10064 (-0.00 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          16 : 493750.dasm (0.11 % of base)
          12 : 101410.dasm (0.28 % of base)
           8 : 258832.dasm (0.85 % of base)
           8 : 79333.dasm (0.66 % of base)
           4 : 177052.dasm (0.82 % of base)
           4 : 235652.dasm (0.82 % of base)
           4 : 241558.dasm (2.04 % of base)
           4 : 281571.dasm (0.82 % of base)
           4 : 285071.dasm (0.82 % of base)
           4 : 300843.dasm (0.82 % of base)
           4 : 326216.dasm (0.82 % of base)
           4 : 328755.dasm (0.82 % of base)
           4 : 330327.dasm (0.82 % of base)
           4 : 332780.dasm (0.82 % of base)
           4 : 366031.dasm (0.82 % of base)
           4 : 367431.dasm (0.82 % of base)
           4 : 426856.dasm (0.82 % of base)
           4 : 432415.dasm (0.82 % of base)
           4 : 461023.dasm (0.82 % of base)
           4 : 610508.dasm (0.40 % of base)

Top file improvements (bytes):
         -48 : 624411.dasm (-0.81 % of base)
         -44 : 564349.dasm (-5.98 % of base)
         -44 : 561758.dasm (-5.98 % of base)
         -44 : 532609.dasm (-5.98 % of base)
         -44 : 533894.dasm (-5.98 % of base)
         -44 : 54042.dasm (-1.39 % of base)
         -44 : 532616.dasm (-5.98 % of base)
         -44 : 534226.dasm (-5.98 % of base)
         -44 : 54224.dasm (-1.22 % of base)
         -32 : 235981.dasm (-1.31 % of base)
         -32 : 241465.dasm (-1.32 % of base)
         -32 : 344529.dasm (-1.33 % of base)
         -32 : 358805.dasm (-1.31 % of base)
         -32 : 570289.dasm (-1.32 % of base)
         -32 : 158497.dasm (-0.69 % of base)
         -32 : 136949.dasm (-1.33 % of base)
         -32 : 67729.dasm (-1.33 % of base)
         -32 : 70510.dasm (-1.32 % of base)
         -32 : 66237.dasm (-1.32 % of base)
         -32 : 99782.dasm (-1.32 % of base)

79 total files with Code Size differences (40 improved, 39 regressed), 0 unchanged.

Top method regressions (bytes):
          16 (0.11 % of base) : 493750.dasm - System.Text.Tests.TranscodingStreamTests+<RunReadTestAsync>d__29:MoveNext():this (Tier1)
          12 (0.28 % of base) : 101410.dasm - System.Runtime.CompilerServices.CallSiteBinder:BindCore[System.__Canon](System.Runtime.CompilerServices.CallSite`1[System.__Canon],System.Object[]):System.__Canon:this (Tier1)
           8 (0.85 % of base) : 258832.dasm - Microsoft.FSharp.Reflection.FSharpValue:MakeFunction(System.Type,Microsoft.FSharp.Core.FSharpFunc`2[System.Object,System.Object]):System.Object (Tier0-FullOpts)
           8 (0.66 % of base) : 79333.dasm - System.Reflection.FieldAccessor:Initialize():this (Instrumented Tier1)
           4 (0.40 % of base) : 610508.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 629316.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 622884.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 627064.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 630168.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 625188.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 631960.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (0.40 % of base) : 632000.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (Instrumented Tier1)
           4 (2.04 % of base) : 178280.dasm - System.GC:AllocateUninitializedArray[int](int,ubyte):int[] (Instrumented Tier1)
           4 (2.04 % of base) : 241558.dasm - System.GC:AllocateUninitializedArray[ubyte](int,ubyte):ubyte[] (Instrumented Tier1)
           4 (2.04 % of base) : 84865.dasm - System.GC:AllocateUninitializedArray[ushort](int,ubyte):ushort[] (Instrumented Tier1)
           4 (1.22 % of base) : 114882.dasm - System.Linq.Enumerable+WhereArrayIterator`1[System.__Canon]:MoveNext():ubyte:this (Tier1-OSR)
           4 (0.82 % of base) : 177052.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 235652.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 281571.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 285071.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)

Top method improvements (bytes):
         -48 (-0.81 % of base) : 624411.dasm - System.Threading.Tests.MutexTests+<>c__DisplayClass19_0:<AbandonExisting>b__0():this (Tier1)
         -44 (-1.39 % of base) : 54042.dasm - Microsoft.CodeAnalysis.CSharp.MergedTypeDeclaration:get_SyntaxReferences():System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.SyntaxReference]:this (Tier1)
         -44 (-1.22 % of base) : 54224.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SymbolExtensions:GetNonNullSyntaxNode(Microsoft.CodeAnalysis.CSharp.Symbol):Microsoft.CodeAnalysis.CSharp.CSharpSyntaxNode (Tier1)
         -44 (-5.98 % of base) : 534226.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[double]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 533894.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[float]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 532609.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[int]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 564349.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[System.Nullable`1[System.DateTimeOffset]]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 561758.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 532616.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -32 (-0.69 % of base) : 158497.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilation:CheckIfAttributeShouldBeEmbedded(int,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,Microsoft.CodeAnalysis.Location):ubyte:this (Tier1)
         -32 (-1.31 % of base) : 235981.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.32 % of base) : 241465.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.33 % of base) : 344529.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.31 % of base) : 358805.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.32 % of base) : 570289.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.33 % of base) : 136949.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.33 % of base) : 67729.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.32 % of base) : 70510.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.32 % of base) : 66237.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)
         -32 (-1.32 % of base) : 99782.dasm - System.Resources.ManifestBasedResourceGroveler:CreateResourceSet(System.IO.Stream,System.Reflection.Assembly):System.Resources.ResourceSet:this (Instrumented Tier1)

Top method regressions (percentages):
           4 (2.04 % of base) : 178280.dasm - System.GC:AllocateUninitializedArray[int](int,ubyte):int[] (Instrumented Tier1)
           4 (2.04 % of base) : 241558.dasm - System.GC:AllocateUninitializedArray[ubyte](int,ubyte):ubyte[] (Instrumented Tier1)
           4 (2.04 % of base) : 84865.dasm - System.GC:AllocateUninitializedArray[ushort](int,ubyte):ushort[] (Instrumented Tier1)
           4 (1.22 % of base) : 114882.dasm - System.Linq.Enumerable+WhereArrayIterator`1[System.__Canon]:MoveNext():ubyte:this (Tier1-OSR)
           8 (0.85 % of base) : 258832.dasm - Microsoft.FSharp.Reflection.FSharpValue:MakeFunction(System.Type,Microsoft.FSharp.Core.FSharpFunc`2[System.Object,System.Object]):System.Object (Tier0-FullOpts)
           4 (0.82 % of base) : 177052.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 235652.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 281571.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 285071.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 300843.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 326216.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 328755.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 330327.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 332780.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 366031.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 367431.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 426856.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 432415.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 461023.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)
           4 (0.82 % of base) : 625331.dasm - System.Reflection.RuntimeConstructorInfo:ComputeAndUpdateInvocationFlags():uint:this (Instrumented Tier1)

Top method improvements (percentages):
         -16 (-12.12 % of base) : 462062.dasm - System.Security.Cryptography.SecKeyPair:Dispose():this (Tier1)
         -16 (-11.11 % of base) : 461842.dasm - System.Security.Cryptography.RSAImplementation+RSASecurityTransforms:Dispose(ubyte):this (Tier1)
          -8 (-10.00 % of base) : 623916.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)
          -8 (-8.33 % of base) : 237214.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)
          -8 (-8.33 % of base) : 458473.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (Tier1)
          -8 (-6.25 % of base) : 93647.dasm - System.Threading.WaitHandle:Dispose(ubyte):this (Instrumented Tier1)
         -44 (-5.98 % of base) : 534226.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[double]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 533894.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[float]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 532609.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[int]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 564349.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[System.Nullable`1[System.DateTimeOffset]]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 561758.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
         -44 (-5.98 % of base) : 532616.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[ubyte]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (Tier1)
          -8 (-5.88 % of base) : 465985.dasm - System.Security.Cryptography.DSAOpenSsl:FreeKey():this (Tier1)
          -8 (-5.88 % of base) : 466028.dasm - System.Security.Cryptography.ECOpenSsl:FreeKey():this (Tier1)
          -8 (-5.56 % of base) : 465988.dasm - System.Security.Cryptography.DSAOpenSsl:Dispose(ubyte):this (Tier1)
          -8 (-4.88 % of base) : 414109.dasm - System.Threading.WaitHandle:Close():this (Instrumented Tier1)
          -8 (-4.88 % of base) : 414283.dasm - System.Threading.WaitHandle:Close():this (Tier1)
          -8 (-4.88 % of base) : 119694.dasm - System.Threading.WaitHandle:Dispose():this (Tier1)
          -8 (-4.65 % of base) : 229675.dasm - System.IO.StringWriter:get_Encoding():System.Text.Encoding:this (Instrumented Tier1)
         -12 (-4.55 % of base) : 47191.dasm - Microsoft.CodeAnalysis.Shared.TestHooks.AsynchronousOperationListenerProvider:get_IsEnabled():ubyte (Tier1)


librariestestsnotieredcompilation.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: 161383428 (overridden on cmd)
Total bytes of diff: 161373768 (overridden on cmd)
Total bytes of delta: -9660 (-0.01 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          60 : 85940.dasm (0.61 % of base)
          60 : 85808.dasm (0.61 % of base)
          60 : 85825.dasm (0.61 % of base)
          60 : 85944.dasm (0.61 % of base)
          36 : 81415.dasm (0.60 % of base)
          36 : 81662.dasm (0.61 % of base)
          32 : 79915.dasm (0.66 % of base)
          32 : 85933.dasm (0.52 % of base)
          32 : 85794.dasm (0.52 % of base)
          32 : 85813.dasm (0.52 % of base)
          32 : 85949.dasm (0.52 % of base)
          28 : 226249.dasm (0.52 % of base)
          28 : 85851.dasm (0.54 % of base)
          28 : 85941.dasm (0.54 % of base)
          28 : 85592.dasm (0.50 % of base)
          28 : 85942.dasm (0.54 % of base)
          28 : 85943.dasm (0.54 % of base)
          24 : 132767.dasm (0.75 % of base)
          24 : 132704.dasm (0.76 % of base)
          24 : 132799.dasm (0.72 % of base)

Top file improvements (bytes):
        -228 : 140292.dasm (-3.04 % of base)
        -100 : 257661.dasm (-5.35 % of base)
         -96 : 225386.dasm (-2.67 % of base)
         -96 : 225548.dasm (-2.93 % of base)
         -64 : 194775.dasm (-2.82 % of base)
         -64 : 225486.dasm (-2.96 % of base)
         -64 : 88069.dasm (-1.17 % of base)
         -64 : 88071.dasm (-1.32 % of base)
         -64 : 192549.dasm (-2.88 % of base)
         -64 : 225506.dasm (-2.96 % of base)
         -64 : 225522.dasm (-2.00 % of base)
         -64 : 23206.dasm (-0.77 % of base)
         -56 : 140765.dasm (-2.18 % of base)
         -56 : 141082.dasm (-2.15 % of base)
         -56 : 154204.dasm (-1.73 % of base)
         -56 : 140864.dasm (-2.13 % of base)
         -56 : 128162.dasm (-1.10 % of base)
         -52 : 20864.dasm (-1.96 % of base)
         -48 : 88065.dasm (-2.29 % of base)
         -48 : 7430.dasm (-0.92 % of base)

84 total files with Code Size differences (44 improved, 40 regressed), 2 unchanged.

Top method regressions (bytes):
          60 (0.61 % of base) : 85944.dasm - System.ComponentModel.Tests.TypeDescriptorTests:RemoveProvider_InvokeObject_RemovesProvider():this (FullOpts)
          60 (0.61 % of base) : 85808.dasm - System.ComponentModel.Tests.TypeDescriptorTests:RemoveProvider_InvokeType_RemovesProvider():this (FullOpts)
          60 (0.61 % of base) : 85940.dasm - System.ComponentModel.Tests.TypeDescriptorTests:RemoveProviderTransparent_InvokeObject_RemovesProvider():this (FullOpts)
          60 (0.61 % of base) : 85825.dasm - System.ComponentModel.Tests.TypeDescriptorTests:RemoveProviderTransparent_InvokeType_RemovesProvider():this (FullOpts)
          36 (0.61 % of base) : 81662.dasm - System.ComponentModel.Composition.ConstraintServicesTests:TryParseConstraint_ContractNameOperatorEqualsAsConstraintArgument_CanParse():this (FullOpts)
          36 (0.60 % of base) : 81415.dasm - System.ComponentModel.Composition.ConstraintServicesTests:TryParseConstraint_ContractNameReverseOperatorEqualsAsConstraintArgument_CanParse():this (FullOpts)
          32 (0.66 % of base) : 79915.dasm - System.ComponentModel.Composition.DirectoryCatalogTests:GetExports():this (FullOpts)
          32 (0.52 % of base) : 85813.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProvider_InvokeObjectMultipleTimes_Refreshes():this (FullOpts)
          32 (0.52 % of base) : 85933.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProvider_InvokeTypeMultipleTimes_Refreshes():this (FullOpts)
          32 (0.52 % of base) : 85794.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProviderTransparent_InvokeObjectMultipleTimes_Refreshes():this (FullOpts)
          32 (0.52 % of base) : 85949.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProviderTransparent_InvokeTypeMultipleTimes_Refreshes():this (FullOpts)
          28 (0.50 % of base) : 85592.dasm - System.ComponentModel.Tests.TypeDescriptionProviderTests:GetFullComponentName_InvokeWithCustomTypeDescriptor_ReturnsExpected(System.Object,System.String):this (FullOpts)
          28 (0.54 % of base) : 85941.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProvider_InvokeObject_GetProviderReturnsExpected():this (FullOpts)
          28 (0.54 % of base) : 85942.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProvider_InvokeType_GetProviderReturnsExpected():this (FullOpts)
          28 (0.54 % of base) : 85943.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProviderTransparent_InvokeObject_GetProviderReturnsExpected():this (FullOpts)
          28 (0.54 % of base) : 85851.dasm - System.ComponentModel.Tests.TypeDescriptorTests:AddProviderTransparent_InvokeType_GetProviderReturnsExpected():this (FullOpts)
          28 (0.52 % of base) : 226249.dasm - System.Text.Tests.TranscodingStreamTests:Flush_FlushesInnerStreamButNotDecodedState():this (FullOpts)
          24 (0.72 % of base) : 132799.dasm - System.Linq.Tests.GroupJoinTests:OuterEmptyInnerNonEmpty():this (FullOpts)
          24 (0.76 % of base) : 132704.dasm - System.Linq.Tests.GroupJoinTests+<>c__DisplayClass11_0:<OuterNullNoComparer>b__0():System.Object:this (FullOpts)
          24 (0.75 % of base) : 132767.dasm - System.Linq.Tests.GroupJoinTests+<>c__DisplayClass7_0:<InnerNull>b__0():System.Object:this (FullOpts)

Top method improvements (bytes):
        -228 (-3.04 % of base) : 140292.dasm - System.Buffers.Binary.Tests.BinaryReaderUnitTests:SpanWriteAndReadBigEndianHeterogeneousStruct():this (FullOpts)
        -100 (-5.35 % of base) : 257661.dasm - System.Text.Json.Tests.Utf8JsonWriterTests:GetNumbersExpectedString(System.Text.Json.JsonWriterOptions,System.String,int[],uint[],long[],ulong[],float[],double[],System.Decimal[],ubyte):System.String (FullOpts)
         -96 (-2.67 % of base) : 225386.dasm - System.Text.Tests.NegativeEncodingTests+<Encodings_TestData>d__0:MoveNext():ubyte:this (FullOpts)
         -96 (-2.93 % of base) : 225548.dasm - System.Text.Tests.UnicodeEncodingTests+<Equals_TestData>d__10:MoveNext():ubyte:this (FullOpts)
         -64 (-2.82 % of base) : 194775.dasm - DataContractSerializerTests:DCS_KnownSerializableTypes_Tuples() (FullOpts)
         -64 (-2.88 % of base) : 192549.dasm - DataContractSerializerTests:DCS_KnownSerializableTypes_Tuples() (FullOpts)
         -64 (-0.77 % of base) : 23206.dasm - Microsoft.CodeAnalysis.CSharp.Binder:ConvertCollectionExpression(Microsoft.CodeAnalysis.CSharp.BoundUnconvertedCollectionExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundCollectionExpression:this (FullOpts)
         -64 (-1.32 % of base) : 88071.dasm - MonoTests.System.Configuration.ConfigurationErrorsExceptionTest:Constructor4():this (FullOpts)
         -64 (-1.17 % of base) : 88069.dasm - MonoTests.System.Configuration.ConfigurationErrorsExceptionTest:Constructor6():this (FullOpts)
         -64 (-2.96 % of base) : 225506.dasm - System.Text.Tests.UnicodeEncodingTests+<Encodings_TestData>d__4:MoveNext():ubyte:this (FullOpts)
         -64 (-2.96 % of base) : 225486.dasm - System.Text.Tests.UTF32EncodingTests+<Encodings_TestData>d__4:MoveNext():ubyte:this (FullOpts)
         -64 (-2.00 % of base) : 225522.dasm - System.Text.Tests.UTF32EncodingTests+<Equals_TestData>d__10:MoveNext():ubyte:this (FullOpts)
         -56 (-1.10 % of base) : 128162.dasm - System.IO.Tests.BinaryWriterTests:BinaryWriter_SeekTests():this (FullOpts)
         -56 (-2.18 % of base) : 140765.dasm - System.MemoryTests.MemoryTests:MemoryFromMemoryManagerInt() (FullOpts)
         -56 (-2.13 % of base) : 140864.dasm - System.MemoryTests.MemoryTests:MemoryFromMemoryManagerLong() (FullOpts)
         -56 (-2.15 % of base) : 141082.dasm - System.MemoryTests.MemoryTests:ReadOnlyMemoryFromMemoryFromMemoryManagerInt() (FullOpts)
         -56 (-1.73 % of base) : 154204.dasm - System.Net.Http.HttpConnectionPool:ReturnHttp2Connection(System.Net.Http.Http2Connection,ubyte,System.Net.Http.HttpConnectionPool+HttpConnectionWaiter`1[System.Net.Http.Http2Connection]):this (FullOpts)
         -52 (-1.96 % of base) : 20864.dasm - System.Net.Http.HttpConnectionPool:ReturnHttp11Connection(System.Net.Http.HttpConnection,ubyte,System.Net.Http.HttpConnectionPool+HttpConnectionWaiter`1[System.Net.Http.HttpConnection]):this (FullOpts)
         -48 (-0.92 % of base) : 7430.dasm - Microsoft.CodeAnalysis.CSharp.Binder:<CreateConversion>g__checkConstraintLanguageVersionAndRuntimeSupportForConversion|208_2(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -48 (-2.29 % of base) : 88065.dasm - MonoTests.System.Configuration.ConfigurationErrorsExceptionTest:GetLineNumber2():this (FullOpts)

Top method regressions (percentages):
           4 (8.33 % of base) : 173830.dasm - System.Reflection.Tests.AssemblyTests:GetExecutingAssembly():System.Reflection.Assembly (FullOpts)
           4 (5.26 % of base) : 199111.dasm - System.Tests.Types.GenericTypeParameter1Of1Tests:CreateType():System.Type:this (FullOpts)
           4 (4.76 % of base) : 34617.dasm - DryIoc.Converter:.cctor() (FullOpts)
           4 (4.76 % of base) : 33984.dasm - LightInject.ServiceContainer:.cctor() (FullOpts)
           4 (4.76 % of base) : 33981.dasm - LightInject.ServiceContainer:<EmitNewInstance>g__IsNotServiceFactory|175_0(System.Type):ubyte (FullOpts)
           4 (4.76 % of base) : 33960.dasm - LightInject.ServiceFactoryLoader:.cctor() (FullOpts)
           4 (4.76 % of base) : 86938.dasm - Microsoft.Composition.Demos.ExtendedCollectionImports.Dictionaries.DictionaryExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86608.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86616.dasm - System.Composition.Hosting.Providers.ExportFactory.ExportFactoryWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 29722.dasm - System.Composition.Hosting.Providers.Lazy.LazyExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86614.dasm - System.Composition.Hosting.Providers.Lazy.LazyExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 41262.dasm - System.Composition.Hosting.Providers.Lazy.LazyExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 29655.dasm - System.Composition.Hosting.Providers.Lazy.LazyWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86547.dasm - System.Composition.Hosting.Providers.Lazy.LazyWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 41089.dasm - System.Composition.Hosting.Providers.Lazy.LazyWithMetadataExportDescriptorProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86612.dasm - System.Composition.Hosting.Providers.Metadata.MetadataViewProvider:.cctor() (FullOpts)
           4 (4.76 % of base) : 86305.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)
           4 (4.35 % of base) : 180692.dasm - System.Reflection.Tests.Helpers:get_ExecutingAssembly():System.Reflection.Assembly (FullOpts)
           4 (4.35 % of base) : 181594.dasm - System.Reflection.Tests.TypeInfoTests+<>c:<GetEnumNames_TypeNotEnum_ThrowsArgumentException>b__16_0():System.Object:this (FullOpts)
           4 (4.35 % of base) : 180858.dasm - System.Reflection.Tests.TypeInfoTests+<>c:<GetEnumUnderlyingType_TypeNotEnum_ThrowsArgumentException>b__18_0():System.Object:this (FullOpts)

Top method improvements (percentages):
         -12 (-21.43 % of base) : 154714.dasm - System.Net.WebSockets.ManagedWebSocket:SendAsync(System.ReadOnlyMemory`1[ubyte],int,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask:this (FullOpts)
         -12 (-16.67 % of base) : 21390.dasm - Newtonsoft.Json.Serialization.JsonTypeReflector:get_DynamicCodeGeneration():ubyte (FullOpts)
          -8 (-14.29 % of base) : 11610.dasm - Microsoft.CodeAnalysis.LocalizableString+FixedLocalizableString:GetHash():int:this (FullOpts)
          -8 (-14.29 % of base) : 2946.dasm - Microsoft.VisualStudio.Composition.ByValueEquality+AssemblyNameComparer:GetHashCode(System.Reflection.AssemblyName):int:this (FullOpts)
          -8 (-14.29 % of base) : 82523.dasm - System.ComponentModel.DesignerCategoryAttribute:GetHashCode():int:this (FullOpts)
          -8 (-14.29 % of base) : 20619.dasm - System.Net.SafeDeleteSslContext:get_IsInvalid():ubyte:this (FullOpts)
          -8 (-11.76 % of base) : 82361.dasm - System.ComponentModel.DescriptionAttribute:GetHashCode():int:this (FullOpts)
          -8 (-11.76 % of base) : 82550.dasm - System.ComponentModel.DisplayNameAttribute:GetHashCode():int:this (FullOpts)
         -32 (-11.27 % of base) : 41557.dasm - Microsoft.CodeAnalysis.NamingStyles.NamingStyle:GetHashCode():int:this (FullOpts)
         -32 (-11.27 % of base) : 47290.dasm - Microsoft.CodeAnalysis.NamingStyles.NamingStyle:GetHashCode():int:this (FullOpts)
         -12 (-11.11 % of base) : 127810.dasm - System.CodeDom.Tests.IndentedTextWriterTests+IndicatingTextWriter:Write(ubyte):this (FullOpts)
          -8 (-11.11 % of base) : 82479.dasm - System.ComponentModel.CategoryAttribute:GetHashCode():int:this (FullOpts)
         -24 (-10.53 % of base) : 153143.dasm - System.Net.NegotiateAuthenticationPal+UnixNegotiateAuthenticationPal:Dispose():this (FullOpts)
          -8 (-10.53 % of base) : 151131.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_HasPrivateKey():ubyte:this (FullOpts)
         -12 (-9.09 % of base) : 34278.dasm - Autofac.Core.Resolving.Pipeline.DefaultResolveRequestContext:ChangeScope(Autofac.Core.ISharingLifetimeScope):this (FullOpts)
          -8 (-8.70 % of base) : 176776.dasm - System.Reflection.Tests.MyAttributeBase_M:ToString():System.String:this (FullOpts)
          -8 (-8.70 % of base) : 176758.dasm - System.Reflection.Tests.ParameterInfoAttributeBase:ToString():System.String:this (FullOpts)
          -8 (-8.00 % of base) : 20887.dasm - System.Net.Security.SslStream:get_IsAuthenticated():ubyte:this (FullOpts)
         -44 (-7.69 % of base) : 139485.dasm - System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1[int]:ConfigureIgnoreCondition(System.Nullable`1[int]):this (FullOpts)
          -8 (-7.14 % of base) : 150310.dasm - System.Security.Cryptography.X509Certificates.AppleCertificatePal:get_Handle():long:this (FullOpts)


realworld.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: 15058504 (overridden on cmd)
Total bytes of diff: 15055148 (overridden on cmd)
Total bytes of delta: -3356 (-0.02 % of base)
    diff is an improvement.
    relative diff is an improvement.

Detail diffs



Top file regressions (bytes):
          24 : 29402.dasm (1.01 % of base)
           8 : 28839.dasm (0.18 % of base)
           8 : 31382.dasm (0.75 % of base)
           8 : 31590.dasm (0.81 % of base)
           8 : 31269.dasm (0.72 % of base)
           8 : 2202.dasm (0.85 % of base)
           8 : 31383.dasm (1.22 % of base)
           4 : 12319.dasm (1.75 % of base)
           4 : 3347.dasm (2.56 % of base)
           4 : 28518.dasm (0.62 % of base)
           4 : 2867.dasm (0.46 % of base)
           4 : 11236.dasm (2.13 % of base)
           4 : 24574.dasm (2.04 % of base)
           4 : 24808.dasm (0.65 % of base)
           4 : 31165.dasm (0.25 % of base)
           4 : 3310.dasm (4.55 % of base)

Top file improvements (bytes):
         -64 : 10574.dasm (-2.28 % of base)
         -56 : 19052.dasm (-1.20 % of base)
         -48 : 23960.dasm (-1.82 % of base)
         -48 : 25924.dasm (-0.92 % of base)
         -48 : 19627.dasm (-1.05 % of base)
         -40 : 7792.dasm (-6.10 % of base)
         -40 : 22572.dasm (-1.07 % of base)
         -40 : 8333.dasm (-1.76 % of base)
         -40 : 9701.dasm (-1.05 % of base)
         -36 : 22994.dasm (-1.49 % of base)
         -36 : 3320.dasm (-7.09 % of base)
         -32 : 21862.dasm (-0.77 % of base)
         -32 : 26518.dasm (-0.92 % of base)
         -32 : 3214.dasm (-0.53 % of base)
         -32 : 10309.dasm (-0.52 % of base)
         -32 : 25972.dasm (-0.35 % of base)
         -28 : 29224.dasm (-0.93 % of base)
         -24 : 26597.dasm (-0.85 % of base)
         -24 : 8421.dasm (-4.41 % of base)
         -24 : 17957.dasm (-2.17 % of base)

67 total files with Code Size differences (51 improved, 16 regressed), 0 unchanged.

Top method regressions (bytes):
          24 (1.01 % of base) : 29402.dasm - System.Management.Automation.CommandProcessor:.cctor() (FullOpts)
           8 (0.85 % of base) : 2202.dasm - Microsoft.FSharp.Reflection.FSharpValue:MakeFunction(System.Type,Microsoft.FSharp.Core.FSharpFunc`2[System.Object,System.Object]):System.Object (FullOpts)
           8 (0.81 % of base) : 31590.dasm - System.Dynamic.BindingRestrictions+InstanceRestriction:GetExpression():System.Linq.Expressions.Expression:this (FullOpts)
           8 (1.22 % of base) : 31383.dasm - System.Linq.Expressions.TypeBinaryExpression:ByValParameterTypeEqual(System.Linq.Expressions.ParameterExpression):System.Linq.Expressions.Expression:this (FullOpts)
           8 (0.75 % of base) : 31382.dasm - System.Linq.Expressions.TypeBinaryExpression:ReduceTypeEqual():System.Linq.Expressions.Expression:this (FullOpts)
           8 (0.18 % of base) : 28839.dasm - System.Management.Automation.Language.Compiler:.cctor() (FullOpts)
           8 (0.72 % of base) : 31269.dasm - System.Runtime.CompilerServices.CallSiteBinder:Stitch[System.__Canon](System.Linq.Expressions.Expression,System.Runtime.CompilerServices.CallSiteBinder+LambdaSignature`1[System.__Canon]):System.Linq.Expressions.Expression`1[System.__Canon] (FullOpts)
           4 (0.46 % of base) : 2867.dasm - Internal.Utilities.FSharpEnvironment:getDotnetHostPath():Microsoft.FSharp.Core.FSharpOption`1[System.String] (FullOpts)
           4 (0.62 % of base) : 28518.dasm - Microsoft.ApplicationInsights.Metrics.MetricSeriesConfigurationForMeasurement:.cctor() (FullOpts)
           4 (4.55 % of base) : 3310.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
           4 (2.56 % of base) : 3347.dasm - Microsoft.Build.Shared.NativeMethodsShared:get_FrameworkCurrentPath():System.String (FullOpts)
           4 (2.04 % of base) : 24574.dasm - Microsoft.CodeAnalysis.CSharp.ErrorFacts:get_ResourceManager():System.Resources.ResourceManager (FullOpts)
           4 (1.75 % of base) : 12319.dasm - Microsoft.ML.Data.PrimitiveDataViewType:.ctor(System.Type):this (FullOpts)
           4 (0.25 % of base) : 31165.dasm - Microsoft.PowerShell.ToStringCodeMethods:Type(System.Type,ubyte,System.String):System.String (FullOpts)
           4 (0.65 % of base) : 24808.dasm - Roslyn.Utilities.UICultureUtilities:TryGetCurrentUICultureSetter(byref):ubyte (FullOpts)
           4 (2.13 % of base) : 11236.dasm - SixLabors.ImageSharp.Tests.TestEnvironment:.cctor() (FullOpts)

Top method improvements (bytes):
         -64 (-2.28 % of base) : 10574.dasm - FSharp.Compiler.Infos+GetParamAttribs@1482:Invoke(System.Tuple`2[FSharp.Compiler.TypedTree+TType,FSharp.Compiler.TypedTree+ArgReprInfo]):System.Tuple`6[ubyte,ubyte,ubyte,FSharp.Compiler.Infos+OptionalArgInfo,FSharp.Compiler.Infos+CallerInfo,FSharp.Compiler.Infos+ReflectedArgInfo]:this (FullOpts)
         -56 (-1.20 % of base) : 19052.dasm - Microsoft.CodeAnalysis.CSharp.Binder:<CreateConversion>g__checkConstraintLanguageVersionAndRuntimeSupportForConversion|210_2(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Conversion,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag):this (FullOpts)
         -48 (-1.82 % of base) : 23960.dasm - Microsoft.CodeAnalysis.CSharp.Binder:TryBindIndexOrRangeImplicitIndexer(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,byref):ubyte:this (FullOpts)
         -48 (-0.92 % of base) : 25924.dasm - Microsoft.CodeAnalysis.CSharp.LocalRewriter:VisitLockStatement(Microsoft.CodeAnalysis.CSharp.BoundLockStatement):Microsoft.CodeAnalysis.CSharp.BoundNode:this (FullOpts)
         -48 (-1.05 % of base) : 19627.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:EarlyDecodeWellKnownAttribute(byref):System.ValueTuple`2[Microsoft.CodeAnalysis.CSharp.Symbols.CSharpAttributeData,Microsoft.CodeAnalysis.CSharp.BoundAttribute]:this (FullOpts)
         -40 (-6.10 % of base) : 7792.dasm - FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:GetTyconAttribs(FSharp.Compiler.TcGlobals+TcGlobals,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]):System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte] (FullOpts)
         -40 (-1.05 % of base) : 9701.dasm - FSharp.Compiler.CheckExpressions:CheckExpr@3448-2(FSharp.Compiler.TcGlobals+TcGlobals,FSharp.Compiler.TypedTreeOps+DisplayEnv,FSharp.Compiler.TypedTreeOps+ValHash`1[FSharp.Compiler.TypedTree+Val],FSharp.Compiler.TypedTreeOps+ValHash`1[int],FSharp.Compiler.TypedTree+ValRef,Microsoft.FSharp.Core.FSharpRef`1[ubyte],Microsoft.FSharp.Core.FSharpRef`1[ubyte],Microsoft.FSharp.Core.FSharpRef`1[ubyte],Microsoft.FSharp.Core.FSharpRef`1[ubyte],Microsoft.FSharp.Core.FSharpRef`1[Microsoft.FSharp.Collections.FSharpList`1[System.Tuple`2[FSharp.Compiler.TypedTree+ValRef,FSharp.Compiler.TypedTree+ValRef]]],FSharp.Compiler.CheckExpressions+InitializationGraphAnalysisState,FSharp.Compiler.TypedTree+Expr) (FullOpts)
         -40 (-1.76 % of base) : 8333.dasm - FSharp.Compiler.CheckExpressions:MakeApplicableExprWithFlex(FSharp.Compiler.CheckExpressions+TcFileState,FSharp.Compiler.CheckExpressions+TcEnv,FSharp.Compiler.TypedTree+Expr):FSharp.Compiler.CheckExpressions+ApplicableExpr (FullOpts)
         -40 (-1.07 % of base) : 22572.dasm - Microsoft.CodeAnalysis.CSharp.Binder:GetEnumeratorInfoCore(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,byref,ubyte,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,byref):int:this (FullOpts)
         -36 (-7.09 % of base) : 3320.dasm - Microsoft.Build.Shared.BuildEnvironmentHelper:CheckIfRunningTests():ubyte (FullOpts)
         -36 (-1.49 % of base) : 22994.dasm - Microsoft.CodeAnalysis.CSharp.LocalBinderFactory:VisitUsingStatement(Microsoft.CodeAnalysis.CSharp.Syntax.UsingStatementSyntax):this (FullOpts)
         -32 (-0.53 % of base) : 3214.dasm - FSharp.Compiler.CompilerImports:TcConfig.TryResolveLibsUsingMSBuildRules.Static(FSharp.Compiler.CompilerConfig+TcConfig,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.CompilerConfig+AssemblyReference],FSharp.Compiler.Text.Range,FSharp.Compiler.CompilerImports+ResolveAssemblyReferenceMode):System.Tuple`2[Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.CompilerImports+AssemblyResolution],Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.CompilerConfig+UnresolvedAssemblyReference]] (FullOpts)
         -32 (-0.52 % of base) : 10309.dasm - FSharp.Compiler.PostTypeCheckSemanticChecks:CheckEntityDefn$cont@2269(FSharp.Compiler.PostTypeCheckSemanticChecks+cenv,FSharp.Compiler.TypedTree+Entity,FSharp.Compiler.TcGlobals+TcGlobals,FSharp.Compiler.Text.Range,FSharp.Compiler.TypedTree+TType,Microsoft.FSharp.Core.Unit) (FullOpts)
         -32 (-0.77 % of base) : 21862.dasm - Microsoft.CodeAnalysis.CSharp.Binder:ConvertToArrayIndex(Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag,ubyte,byref):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -32 (-0.92 % of base) : 26518.dasm - Microsoft.CodeAnalysis.CSharp.CodeGen.CodeGenerator:EmitStringSwitchJumpTable(System.Collections.Generic.KeyValuePair`2[Microsoft.CodeAnalysis.ConstantValue,System.Object][],Microsoft.CodeAnalysis.CSharp.Symbols.LabelSymbol,Microsoft.CodeAnalysis.CodeGen.LocalOrParameter,Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol):this (FullOpts)
         -32 (-0.35 % of base) : 25972.dasm - Microsoft.CodeAnalysis.CSharp.CodeGen.CodeGenerator:TryEmitReadonlySpanAsBlobWrapper(Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,Microsoft.CodeAnalysis.CSharp.BoundExpression,ubyte,Microsoft.CodeAnalysis.CSharp.BoundExpression,byref,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.BoundExpression):ubyte:this (FullOpts)
         -28 (-0.93 % of base) : 29224.dasm - System.Management.Automation.LocationGlobber:ResolveDriveQualifiedPath(System.String,System.Management.Automation.CmdletProviderContext,ubyte,byref):System.Collections.ObjectModel.Collection`1[System.Management.Automation.PathInfo]:this (FullOpts)
         -24 (-4.41 % of base) : 8421.dasm - FSharp.Compiler.CheckExpressions+GeneralizationHelpers+IsCondensationTypar@2210:Invoke(FSharp.Compiler.TypedTree+Typar):ubyte:this (FullOpts)
         -24 (-0.85 % of base) : 26597.dasm - Microsoft.CodeAnalysis.CSharp.LocalRewriter:MakeEventAccess(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Symbols.EventSymbol,Microsoft.CodeAnalysis.ConstantValue,ubyte,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol):Microsoft.CodeAnalysis.CSharp.BoundExpression:this (FullOpts)
         -24 (-2.17 % of base) : 17957.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceAssemblySymbol:ReportDiagnosticsForSynthesizedAttributes(Microsoft.CodeAnalysis.CSharp.CSharpCompilation,Microsoft.CodeAnalysis.CSharp.BindingDiagnosticBag) (FullOpts)

Top method regressions (percentages):
           4 (4.55 % of base) : 3310.dasm - Microsoft.Build.Shared.FileUtilities:get_ExecutingAssemblyPath():System.String (FullOpts)
           4 (2.56 % of base) : 3347.dasm - Microsoft.Build.Shared.NativeMethodsShared:get_FrameworkCurrentPath():System.String (FullOpts)
           4 (2.13 % of base) : 11236.dasm - SixLabors.ImageSharp.Tests.TestEnvironment:.cctor() (FullOpts)
           4 (2.04 % of base) : 24574.dasm - Microsoft.CodeAnalysis.CSharp.ErrorFacts:get_ResourceManager():System.Resources.ResourceManager (FullOpts)
           4 (1.75 % of base) : 12319.dasm - Microsoft.ML.Data.PrimitiveDataViewType:.ctor(System.Type):this (FullOpts)
           8 (1.22 % of base) : 31383.dasm - System.Linq.Expressions.TypeBinaryExpression:ByValParameterTypeEqual(System.Linq.Expressions.ParameterExpression):System.Linq.Expressions.Expression:this (FullOpts)
          24 (1.01 % of base) : 29402.dasm - System.Management.Automation.CommandProcessor:.cctor() (FullOpts)
           8 (0.85 % of base) : 2202.dasm - Microsoft.FSharp.Reflection.FSharpValue:MakeFunction(System.Type,Microsoft.FSharp.Core.FSharpFunc`2[System.Object,System.Object]):System.Object (FullOpts)
           8 (0.81 % of base) : 31590.dasm - System.Dynamic.BindingRestrictions+InstanceRestriction:GetExpression():System.Linq.Expressions.Expression:this (FullOpts)
           8 (0.75 % of base) : 31382.dasm - System.Linq.Expressions.TypeBinaryExpression:ReduceTypeEqual():System.Linq.Expressions.Expression:this (FullOpts)
           8 (0.72 % of base) : 31269.dasm - System.Runtime.CompilerServices.CallSiteBinder:Stitch[System.__Canon](System.Linq.Expressions.Expression,System.Runtime.CompilerServices.CallSiteBinder+LambdaSignature`1[System.__Canon]):System.Linq.Expressions.Expression`1[System.__Canon] (FullOpts)
           4 (0.65 % of base) : 24808.dasm - Roslyn.Utilities.UICultureUtilities:TryGetCurrentUICultureSetter(byref):ubyte (FullOpts)
           4 (0.62 % of base) : 28518.dasm - Microsoft.ApplicationInsights.Metrics.MetricSeriesConfigurationForMeasurement:.cctor() (FullOpts)
           4 (0.46 % of base) : 2867.dasm - Internal.Utilities.FSharpEnvironment:getDotnetHostPath():Microsoft.FSharp.Core.FSharpOption`1[System.String] (FullOpts)
           4 (0.25 % of base) : 31165.dasm - Microsoft.PowerShell.ToStringCodeMethods:Type(System.Type,ubyte,System.String):System.String (FullOpts)
           8 (0.18 % of base) : 28839.dasm - System.Management.Automation.Language.Compiler:.cctor() (FullOpts)

Top method improvements (percentages):
         -36 (-7.09 % of base) : 3320.dasm - Microsoft.Build.Shared.BuildEnvironmentHelper:CheckIfRunningTests():ubyte (FullOpts)
         -40 (-6.10 % of base) : 7792.dasm - FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:GetTyconAttribs(FSharp.Compiler.TcGlobals+TcGlobals,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]):System.Tuple`5[ubyte,ubyte,ubyte,ubyte,ubyte] (FullOpts)
          -8 (-5.88 % of base) : 16042.dasm - Roslyn.Utilities.TextKeyedCache`1[System.__Canon]:NextRandom():int:this (FullOpts)
         -16 (-5.88 % of base) : 564.dasm - System.IO.MemoryMappedFiles.MemoryMappedFile:Dispose(ubyte):this (FullOpts)
          -8 (-5.56 % of base) : 10340.dasm - FSharp.Compiler.TypedTreeBasics:isLessAccessible(FSharp.Compiler.TypedTree+Accessibility,FSharp.Compiler.TypedTree+Accessibility):ubyte (FullOpts)
          -8 (-5.41 % of base) : 8439.dasm - FSharp.Compiler.CheckExpressions+PlaceTyparsInDeclarationOrder@1625:Invoke(FSharp.Compiler.TypedTree+Typar):ubyte:this (FullOpts)
         -16 (-4.60 % of base) : 7926.dasm - FSharp.Compiler.CheckDeclarations+EstablishTypeDefinitionCores:insertEdgeToTycon@4349(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Entity],FSharp.Compiler.TypedTree+Entity,FSharp.Compiler.TypedTree+Entity,Microsoft.FSharp.Collections.FSharpList`1[System.Tuple`2[FSharp.Compiler.TypedTree+Entity,FSharp.Compiler.TypedTree+Entity]]):Microsoft.FSharp.Collections.FSharpList`1[System.Tuple`2[FSharp.Compiler.TypedTree+Entity,FSharp.Compiler.TypedTree+Entity]] (FullOpts)
         -24 (-4.41 % of base) : 8421.dasm - FSharp.Compiler.CheckExpressions+GeneralizationHelpers+IsCondensationTypar@2210:Invoke(FSharp.Compiler.TypedTree+Typar):ubyte:this (FullOpts)
          -8 (-4.17 % of base) : 965.dasm - System.Text.UnicodeEncoding:.cctor() (FullOpts)
         -12 (-3.90 % of base) : 23754.dasm - Microsoft.CodeAnalysis.CSharp.NullableWalker:VisitQueryClause(Microsoft.CodeAnalysis.CSharp.BoundQueryClause):Microsoft.CodeAnalysis.CSharp.BoundNode:this (FullOpts)
          -8 (-3.85 % of base) : 21302.dasm - Microsoft.CodeAnalysis.CSharp.LocalDataFlowPass`2[Microsoft.CodeAnalysis.CSharp.NullableWalker+LocalState,System.__Canon]:HasInitializer(Microsoft.CodeAnalysis.CSharp.Symbol):ubyte (FullOpts)
          -8 (-3.77 % of base) : 8289.dasm - FSharp.Compiler.CheckExpressions+envinner@6481:Invoke(FSharp.Compiler.TypedTree+Val,FSharp.Compiler.TypedTree+ArgReprInfo):Microsoft.FSharp.Core.Unit:this (FullOpts)
          -8 (-3.70 % of base) : 5528.dasm - System.Threading.CancellationTokenSource:Dispose(ubyte):this (FullOpts)
          -8 (-3.64 % of base) : 9607.dasm - FSharp.Compiler.ConstraintSolver+results@1879-1:Invoke(FSharp.Compiler.Infos+MethInfo):ubyte:this (FullOpts)
          -8 (-3.45 % of base) : 18774.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourcePropertySymbolBase:GetAttributesBag():Microsoft.CodeAnalysis.CustomAttributesBag`1[Microsoft.CodeAnalysis.CSharp.Symbols.CSharpAttributeData]:this (FullOpts)
         -12 (-3.26 % of base) : 3288.dasm - Microsoft.Build.Shared.NativeMethodsShared:get_IsMono():ubyte (FullOpts)
          -8 (-3.03 % of base) : 9230.dasm - FSharp.Compiler.AttributeChecking+TryBindMethInfoAttribute@202-1[System.__Canon]:Invoke(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Attrib]):Microsoft.FSharp.Core.FSharpOption`1[System.__Canon]:this (FullOpts)
          -8 (-2.99 % of base) : 9779.dasm - FSharp.Compiler.CheckDeclarations+TcOpenModuleOrNamespaceDecl@643:Invoke(System.Tuple`3[int,FSharp.Compiler.TypedTree+EntityRef,FSharp.Compiler.TypedTree+ModuleOrNamespaceType]):ubyte:this (FullOpts)
         -16 (-2.99 % of base) : 8371.dasm - FSharp.Compiler.TypedTreeOps:accFreeTyparRefLeftToRight(FSharp.Compiler.TcGlobals+TcGlobals,ubyte,ubyte,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Typar],FSharp.Compiler.TypedTree+Typar):Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+Typar] (FullOpts)
          -8 (-2.86 % of base) : 9336.dasm - FSharp.Compiler.ConstraintSolver:eliminateRedundant@2131(FSharp.Compiler.TcGlobals+TcGlobals,FSharp.Compiler.TypedTreeOps+TypeEquivEnv,FSharp.Compiler.Import+ImportMap,FSharp.Compiler.Text.Range,Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+TyparConstraint],Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+TyparConstraint]):Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.TypedTree+TyparConstraint] (FullOpts)