KEMBAR78
Allow TernaryLogic to optimize down to BlendVariableMask where appropriate by tannergooding · Pull Request #97468 · dotnet/runtime · GitHub
Skip to content

Conversation

@tannergooding
Copy link
Member

@tannergooding tannergooding commented Jan 24, 2024

Given the following code:

public static Vector512<float> M(Vector512<float> x, Vector512<float> y)
{
    return Vector512.ConditionalSelect(Vector512.Equals(x, y), x, y);
}

###Before:

; Method Program:M(System.Runtime.Intrinsics.Vector512`1[float],System.Runtime.Intrinsics.Vector512`1[float]):System.Runtime.Intrinsics.Vector512`1[float] (FullOpts)
G_M44221_IG01:  ;; offset=0x0000
       vzeroupper 
						;; size=3 bbWeight=1 PerfScore 1.00

G_M44221_IG02:  ;; offset=0x0003
       vmovups  zmm0, zmmword ptr [rdx]
       vmovups  zmm1, zmmword ptr [r8]
       vcmpps   k1, zmm0, zmm1, 0
       vpmovm2d zmm2, k1
       vpternlogd zmm2, zmm0, zmm1, -54
       vmovups  zmmword ptr [rcx], zmm2
       mov      rax, rcx
						;; size=41 bbWeight=1 PerfScore 14.75

G_M44221_IG03:  ;; offset=0x002C
       vzeroupper 
       ret      
						;; size=4 bbWeight=1 PerfScore 2.00
; Total bytes of code: 48

After:

; Method Program:M(System.Runtime.Intrinsics.Vector512`1[float],System.Runtime.Intrinsics.Vector512`1[float]):System.Runtime.Intrinsics.Vector512`1[float] (FullOpts)
G_M44221_IG01:  ;; offset=0x0000
       vzeroupper 
						;; size=3 bbWeight=1 PerfScore 1.00

G_M44221_IG02:  ;; offset=0x0003
       vmovups  zmm0, zmmword ptr [rdx]
       vmovups  zmm1, zmmword ptr [r8]
       vcmpps   k1, zmm0, zmm1, 0
       vblendmps zmm0 k1, zmm1, zmm0
       vmovups  zmmword ptr [rcx], zmm0
       mov      rax, rcx
						;; size=35 bbWeight=1 PerfScore 13.75

G_M44221_IG03:  ;; offset=0x0026
       vzeroupper 
       ret      
						;; size=4 bbWeight=1 PerfScore 2.00
; Total bytes of code: 42

@ghost ghost assigned tannergooding Jan 24, 2024
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Jan 24, 2024
@ghost
Copy link

ghost commented Jan 24, 2024

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

Given the following code:

public static Vector512<float> M(Vector512<float> x, Vector512<float> y)
{
    return Vector512.ConditionalSelect(Vector512.Equals(x, y), x, y);
}

###Before:

; Method Program:M(System.Runtime.Intrinsics.Vector512`1[float],System.Runtime.Intrinsics.Vector512`1[float]):System.Runtime.Intrinsics.Vector512`1[float] (FullOpts)
G_M44221_IG01:  ;; offset=0x0000
       vzeroupper 
						;; size=3 bbWeight=1 PerfScore 1.00

G_M44221_IG02:  ;; offset=0x0003
       vmovups  zmm0, zmmword ptr [rdx]
       vmovups  zmm1, zmmword ptr [r8]
       vcmpps   k1, zmm0, zmm1, 0
       vpmovm2d zmm2, k1
       vpternlogd zmm2, zmm0, zmm1, -54
       vmovups  zmmword ptr [rcx], zmm2
       mov      rax, rcx
						;; size=41 bbWeight=1 PerfScore 14.75

G_M44221_IG03:  ;; offset=0x002C
       vzeroupper 
       ret      
						;; size=4 bbWeight=1 PerfScore 2.00
; Total bytes of code: 48

After:

; Method Program:M(System.Runtime.Intrinsics.Vector512`1[float],System.Runtime.Intrinsics.Vector512`1[float]):System.Runtime.Intrinsics.Vector512`1[float] (FullOpts)
G_M44221_IG01:  ;; offset=0x0000
       vzeroupper 
						;; size=3 bbWeight=1 PerfScore 1.00

G_M44221_IG02:  ;; offset=0x0003
       vmovups  zmm0, zmmword ptr [rdx]
       vmovups  zmm1, zmmword ptr [r8]
       vcmpps   k1, zmm0, zmm1, 0
       vblendmps zmm0 k1, zmm1, zmm0
       vmovups  zmmword ptr [rcx], zmm0
       mov      rax, rcx
						;; size=35 bbWeight=1 PerfScore 13.75

G_M44221_IG03:  ;; offset=0x0026
       vzeroupper 
       ret      
						;; size=4 bbWeight=1 PerfScore 2.00
; Total bytes of code: 42
Author: tannergooding
Assignees: tannergooding
Labels:

area-CodeGen-coreclr

Milestone: -

@stephentoub
Copy link
Member

You'd mentioned to me such lowering is already being done in some cases. For my edification, how does the scenerios this newly covers differ from what was already covered? Is this about 512 specifically now?

@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,512,262 contexts (977,780 MinOpts, 1,534,482 FullOpts).

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,454,856 -42
coreclr_tests.run.linux.x64.checked.mch 403,726,743 -528
libraries.pmi.linux.x64.checked.mch 60,288,822 -469
libraries_tests.run.linux.x64.Release.mch 342,241,520 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 132,684,790 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,195,910 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,920 -192
libraries_tests.run.linux.x64.Release.mch 183,917,771 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,190,683 -42
coreclr_tests.run.linux.x64.checked.mch 123,908,823 -336
libraries.pmi.linux.x64.checked.mch 60,175,952 -469
libraries_tests.run.linux.x64.Release.mch 158,323,749 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 122,026,342 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,194,961 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,373,201 contexts (928,756 MinOpts, 1,444,445 FullOpts).

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,749,502 -28
coreclr_tests.run.windows.x64.checked.mch 393,893,406 -528
libraries.pmi.windows.x64.checked.mch 61,525,850 -499
libraries_tests.run.windows.x64.Release.mch 279,744,051 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 137,525,226 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,089,881 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,505,068 -192
libraries_tests.run.windows.x64.Release.mch 175,004,596 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,749,141 -28
coreclr_tests.run.windows.x64.checked.mch 120,388,338 -336
libraries.pmi.windows.x64.checked.mch 61,412,331 -499
libraries_tests.run.windows.x64.Release.mch 104,739,455 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 126,648,064 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,088,934 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,299,121 contexts (840,463 MinOpts, 1,458,658 FullOpts).

MISSED contexts: 7 (0.00%)

Overall (-2,931 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 7,123,696 -113
benchmarks.run_pgo.windows.x86.checked.mch 45,854,626 -122
benchmarks.run_tiered.windows.x86.checked.mch 9,444,502 -113
coreclr_tests.run.windows.x86.checked.mch 309,424,823 -576
libraries.pmi.windows.x86.checked.mch 49,148,609 -498
libraries_tests.run.windows.x86.Release.mch 188,553,323 -772
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 103,930,242 -737
FullOpts (-2,931 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 7,123,417 -113
benchmarks.run_pgo.windows.x86.checked.mch 39,241,495 -122
benchmarks.run_tiered.windows.x86.checked.mch 5,176,811 -113
coreclr_tests.run.windows.x86.checked.mch 107,730,518 -576
libraries.pmi.windows.x86.checked.mch 49,053,295 -498
libraries_tests.run.windows.x86.Release.mch 90,396,173 -772
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 95,260,534 -737

Details here


Assembly diffs for windows/x86 ran on linux/x86

Diffs are based on 2,299,121 contexts (840,463 MinOpts, 1,458,658 FullOpts).

MISSED contexts: 7 (0.00%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 7,123,696 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,854,626 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,444,502 -117
coreclr_tests.run.windows.x86.checked.mch 309,424,823 -672
libraries.pmi.windows.x86.checked.mch 49,148,609 -565
libraries_tests.run.windows.x86.Release.mch 188,553,323 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 103,930,242 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 7,123,417 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,241,495 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,176,811 -117
coreclr_tests.run.windows.x86.checked.mch 107,730,518 -672
libraries.pmi.windows.x86.checked.mch 49,053,295 -565
libraries_tests.run.windows.x86.Release.mch 90,396,173 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 95,260,534 -845

Details here


@tannergooding
Copy link
Member Author

This is specifically about handling TYP_MASK inputs that exist in AVX512 or later, since that hardware has a special mask register (k1-k7) that is produced by comparisons and can be used to do masking based operations such as this.

Basically ensuring that the codegen is optimal for V512, where it was already handling this for V128/V256.

@tannergooding
Copy link
Member Author

In the diffs just linked, you can see an example of this where we can remove a few vpmovm2b and vpternlogd instructions in favor of consuming k1 directly with vpblendmb. For V128/V256 the vpcmpub instruction produces an xmm/ymm register and so vpternlogd is the better choice since it can be consumed as is.

-       vpmovm2b zmm2, k1
-       vxorps   ymm3, ymm3, ymm3
-       vpcmpub  k1, zmm0, zmm3, 1
-       vpmovm2b zmm3, k1
-       vpternlogd zmm3, zmm0, zmm1, -54
-       vpcmpub  k1, zmm0, zmm1, 1
-       vpmovm2b zmm4, k1
-       vpternlogd zmm4, zmm0, zmm1, -54
-       vpternlogd zmm2, zmm3, zmm4, -54
-       vmovups  zmmword ptr [rdi], zmm2
+       vxorps   ymm2, ymm2, ymm2
+       vpcmpub  k2, zmm0, zmm2, 1
+       vpblendmb zmm2 {k2}, zmm1, zmm0
+       vpcmpub  k2, zmm0, zmm1, 1
+       vpblendmb zmm0 {k2}, zmm1, zmm0
+       vpblendmb zmm0 {k1}, zmm0, zmm2
+       vmovups  zmmword ptr [rdi], zmm0

Copy link
Contributor

@kunalspathak kunalspathak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

#endif

#include "allocacheck.h" // for alloca
#include "hwintrinsic.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is needed?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, no. I had started by doing the change in morph and realized it wouldn't be a good fit due to the parameter swapping and needing to deal with potential side effects from commas/etc

@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for windows/x64 ran on linux/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@tannergooding tannergooding merged commit 135fec0 into dotnet:main Jan 25, 2024
@tannergooding tannergooding deleted the avx512-blendmask branch January 25, 2024 06:26
@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


1 similar comment
@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


4 similar comments
@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@ryujit-bot
Copy link

Diff results for #97468

Assembly diffs

Assembly diffs for linux/x64 ran on windows/x64

Diffs are based on 2,505,358 contexts (977,766 MinOpts, 1,527,592 FullOpts).

MISSED contexts: 6,904 (0.27%)

Overall (-10,720 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 16,154,102 -42
coreclr_tests.run.linux.x64.checked.mch 403,032,058 -528
libraries.pmi.linux.x64.checked.mch 58,945,732 -469
libraries_tests.run.linux.x64.Release.mch 340,323,621 -8,897
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 131,037,400 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,193,336 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.linux.x64.checked.mch 279,817,336 -192
libraries_tests.run.linux.x64.Release.mch 183,915,696 -56
FullOpts (-10,472 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.linux.x64.checked.mch 15,889,929 -42
coreclr_tests.run.linux.x64.checked.mch 123,214,722 -336
libraries.pmi.linux.x64.checked.mch 58,832,862 -469
libraries_tests.run.linux.x64.Release.mch 156,407,925 -8,841
libraries_tests_no_tiered_compilation.run.linux.x64.Release.mch 120,378,952 -756
smoke_tests.nativeaot.linux.x64.checked.mch 4,192,387 -28

Assembly diffs for windows/x64 ran on windows/x64

Diffs are based on 2,366,413 contexts (928,740 MinOpts, 1,437,673 FullOpts).

MISSED contexts: 6,788 (0.29%)

Overall (-2,856 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,947 -28
coreclr_tests.run.windows.x64.checked.mch 393,235,161 -528
libraries.pmi.windows.x64.checked.mch 60,138,217 -499
libraries_tests.run.windows.x64.Release.mch 278,258,792 -1,014
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 135,861,173 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,087,315 -28
MinOpts (-248 bytes)
Collection Base size (bytes) Diff size (bytes)
coreclr_tests.run.windows.x64.checked.mch 273,504,444 -192
libraries_tests.run.windows.x64.Release.mch 175,002,442 -56
FullOpts (-2,608 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x64.checked.mch 8,538,586 -28
coreclr_tests.run.windows.x64.checked.mch 119,730,717 -336
libraries.pmi.windows.x64.checked.mch 60,024,698 -499
libraries_tests.run.windows.x64.Release.mch 103,256,350 -958
libraries_tests_no_tiered_compilation.run.windows.x64.Release.mch 124,984,011 -759
smoke_tests.nativeaot.windows.x64.checked.mch 5,086,368 -28

Details here


Assembly diffs for windows/x86 ran on windows/x86

Diffs are based on 2,292,278 contexts (840,452 MinOpts, 1,451,826 FullOpts).

MISSED contexts: 6,850 (0.30%)

Overall (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,581 -117
benchmarks.run_pgo.windows.x86.checked.mch 45,650,701 -126
benchmarks.run_tiered.windows.x86.checked.mch 9,318,080 -117
coreclr_tests.run.windows.x86.checked.mch 308,781,934 -672
libraries.pmi.windows.x86.checked.mch 48,079,459 -565
libraries_tests.run.windows.x86.Release.mch 187,430,449 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 102,689,706 -845
FullOpts (-3,338 bytes)
Collection Base size (bytes) Diff size (bytes)
benchmarks.run.windows.x86.checked.mch 6,964,302 -117
benchmarks.run_pgo.windows.x86.checked.mch 39,037,822 -126
benchmarks.run_tiered.windows.x86.checked.mch 5,050,641 -117
coreclr_tests.run.windows.x86.checked.mch 107,087,629 -672
libraries.pmi.windows.x86.checked.mch 47,984,145 -565
libraries_tests.run.windows.x86.Release.mch 89,274,018 -896
libraries_tests_no_tiered_compilation.run.windows.x86.Release.mch 94,019,998 -845

Details here


@github-actions github-actions bot locked and limited conversation to collaborators Feb 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants