Skip to content

Commit 39e65b8

Browse files
committed
[llvm-mca][x86] Add AVX512 VMOVNTDQA instruction test coverage
1 parent def22f4 commit 39e65b8

File tree

10 files changed

+65
-10
lines changed

10 files changed

+65
-10
lines changed

llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,8 @@ vmovdqu64 %zmm16, (%rax) {k1}
467467
vmovdqu64 %zmm16, %zmm19 {z}{k1}
468468
vmovdqu64 (%rax), %zmm19 {z}{k1}
469469

470+
vmovntdqa (%rax), %zmm0
471+
470472
vmovshdup %zmm16, %zmm19
471473
vmovshdup (%rax), %zmm19
472474
vmovshdup %zmm16, %zmm19 {k1}
@@ -1497,6 +1499,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
14971499
# CHECK-NEXT: 1 1 1.00 * vmovdqu64 %zmm16, (%rax) {%k1}
14981500
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1} {z}
14991501
# CHECK-NEXT: 1 7 0.50 * vmovdqu64 (%rax), %zmm19 {%k1} {z}
1502+
# CHECK-NEXT: 1 7 0.50 * vmovntdqa (%rax), %zmm0
15001503
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19
15011504
# CHECK-NEXT: 2 8 1.00 * vmovshdup (%rax), %zmm19
15021505
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19 {%k1}
@@ -2050,7 +2053,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
20502053

20512054
# CHECK: Resource pressure per iteration:
20522055
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
2053-
# CHECK-NEXT: - 1506.00 198.00 335.00 25.00 523.00 304.00 304.00
2056+
# CHECK-NEXT: - 1506.00 198.00 335.00 25.00 523.00 304.50 304.50
20542057

20552058
# CHECK: Resource pressure by instruction:
20562059
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -2463,6 +2466,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
24632466
# CHECK-NEXT: - - - - 1.00 - 0.50 0.50 vmovdqu64 %zmm16, (%rax) {%k1}
24642467
# CHECK-NEXT: - - 0.50 - - 0.50 - - vmovdqu64 %zmm16, %zmm19 {%k1} {z}
24652468
# CHECK-NEXT: - - - - - - 0.50 0.50 vmovdqu64 (%rax), %zmm19 {%k1} {z}
2469+
# CHECK-NEXT: - - - - - - 0.50 0.50 vmovntdqa (%rax), %zmm0
24662470
# CHECK-NEXT: - - - - - 1.00 - - vmovshdup %zmm16, %zmm19
24672471
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vmovshdup (%rax), %zmm19
24682472
# CHECK-NEXT: - - - - - 1.00 - - vmovshdup %zmm16, %zmm19 {%k1}

llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,9 @@ vmovddup (%rax), %ymm19 {k1}
750750
vmovddup %ymm16, %ymm19 {z}{k1}
751751
vmovddup (%rax), %ymm19 {z}{k1}
752752

753+
{evex} vmovntdqa (%rax), %xmm0
754+
{evex} vmovntdqa (%rax), %ymm0
755+
753756
vmovshdup %xmm16, %xmm19
754757
vmovshdup (%rax), %xmm19
755758
vmovshdup %xmm16, %xmm19 {k1}
@@ -2397,6 +2400,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
23972400
# CHECK-NEXT: 2 8 1.00 * vmovddup (%rax), %ymm19 {%k1}
23982401
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm16, %ymm19 {%k1} {z}
23992402
# CHECK-NEXT: 2 8 1.00 * vmovddup (%rax), %ymm19 {%k1} {z}
2403+
# CHECK-NEXT: 1 6 0.50 * {evex} vmovntdqa (%rax), %xmm0
2404+
# CHECK-NEXT: 1 7 0.50 * {evex} vmovntdqa (%rax), %ymm0
24002405
# CHECK-NEXT: 1 1 1.00 vmovshdup %xmm16, %xmm19
24012406
# CHECK-NEXT: 2 7 1.00 * vmovshdup (%rax), %xmm19
24022407
# CHECK-NEXT: 1 1 1.00 vmovshdup %xmm16, %xmm19 {%k1}
@@ -3264,7 +3269,7 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
32643269

32653270
# CHECK: Resource pressure per iteration:
32663271
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
3267-
# CHECK-NEXT: - 1935.00 278.00 579.50 48.00 738.50 494.50 494.50
3272+
# CHECK-NEXT: - 1935.00 278.00 579.50 48.00 738.50 495.50 495.50
32683273

32693274
# CHECK: Resource pressure by instruction:
32703275
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -3936,6 +3941,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
39363941
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vmovddup (%rax), %ymm19 {%k1}
39373942
# CHECK-NEXT: - - - - - 1.00 - - vmovddup %ymm16, %ymm19 {%k1} {z}
39383943
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vmovddup (%rax), %ymm19 {%k1} {z}
3944+
# CHECK-NEXT: - - - - - - 0.50 0.50 {evex} vmovntdqa (%rax), %xmm0
3945+
# CHECK-NEXT: - - - - - - 0.50 0.50 {evex} vmovntdqa (%rax), %ymm0
39393946
# CHECK-NEXT: - - - - - 1.00 - - vmovshdup %xmm16, %xmm19
39403947
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vmovshdup (%rax), %xmm19
39413948
# CHECK-NEXT: - - - - - 1.00 - - vmovshdup %xmm16, %xmm19 {%k1}

llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,8 @@ vmovdqu64 %zmm16, (%rax) {k1}
467467
vmovdqu64 %zmm16, %zmm19 {z}{k1}
468468
vmovdqu64 (%rax), %zmm19 {z}{k1}
469469

470+
vmovntdqa (%rax), %zmm0
471+
470472
vmovshdup %zmm16, %zmm19
471473
vmovshdup (%rax), %zmm19
472474
vmovshdup %zmm16, %zmm19 {k1}
@@ -1497,6 +1499,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
14971499
# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %zmm16, (%rax) {%k1}
14981500
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1} {z}
14991501
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %zmm19 {%k1} {z}
1502+
# CHECK-NEXT: 1 7 0.50 * vmovntdqa (%rax), %zmm0
15001503
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19
15011504
# CHECK-NEXT: 2 8 0.50 * vmovshdup (%rax), %zmm19
15021505
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19 {%k1}
@@ -2054,7 +2057,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
20542057

20552058
# CHECK: Resource pressure per iteration:
20562059
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
2057-
# CHECK-NEXT: - 612.00 411.17 103.67 327.50 327.50 48.50 593.17 6.00 48.50 48.50 48.50
2060+
# CHECK-NEXT: - 612.00 411.17 103.67 328.00 328.00 48.50 593.17 6.00 48.50 48.50 48.50
20582061

20592062
# CHECK: Resource pressure by instruction:
20602063
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -2467,6 +2470,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
24672470
# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %zmm16, (%rax) {%k1}
24682471
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu64 %zmm16, %zmm19 {%k1} {z}
24692472
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %zmm19 {%k1} {z}
2473+
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovntdqa (%rax), %zmm0
24702474
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovshdup %zmm16, %zmm19
24712475
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovshdup (%rax), %zmm19
24722476
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovshdup %zmm16, %zmm19 {%k1}

llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,9 @@ vmovddup (%rax), %ymm19 {k1}
750750
vmovddup %ymm16, %ymm19 {z}{k1}
751751
vmovddup (%rax), %ymm19 {z}{k1}
752752

753+
{evex} vmovntdqa (%rax), %xmm0
754+
{evex} vmovntdqa (%rax), %ymm0
755+
753756
vmovshdup %xmm16, %xmm19
754757
vmovshdup (%rax), %xmm19
755758
vmovshdup %xmm16, %xmm19 {k1}
@@ -2397,6 +2400,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
23972400
# CHECK-NEXT: 2 8 0.50 * vmovddup (%rax), %ymm19 {%k1}
23982401
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm16, %ymm19 {%k1} {z}
23992402
# CHECK-NEXT: 2 8 0.50 * vmovddup (%rax), %ymm19 {%k1} {z}
2403+
# CHECK-NEXT: 2 7 0.50 * {evex} vmovntdqa (%rax), %xmm0
2404+
# CHECK-NEXT: 2 8 0.50 * {evex} vmovntdqa (%rax), %ymm0
24002405
# CHECK-NEXT: 1 1 0.50 vmovshdup %xmm16, %xmm19
24012406
# CHECK-NEXT: 2 7 0.50 * vmovshdup (%rax), %xmm19
24022407
# CHECK-NEXT: 1 1 0.50 vmovshdup %xmm16, %xmm19 {%k1}
@@ -3268,7 +3273,7 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
32683273

32693274
# CHECK: Resource pressure per iteration:
32703275
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
3271-
# CHECK-NEXT: - 423.00 462.33 421.33 492.50 492.50 44.00 738.33 12.00 44.00 44.00 44.00
3276+
# CHECK-NEXT: - 423.00 463.00 422.00 493.50 493.50 44.00 739.00 12.00 44.00 44.00 44.00
32723277

32733278
# CHECK: Resource pressure by instruction:
32743279
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -3940,6 +3945,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
39403945
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovddup (%rax), %ymm19 {%k1}
39413946
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %ymm16, %ymm19 {%k1} {z}
39423947
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovddup (%rax), %ymm19 {%k1} {z}
3948+
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - {evex} vmovntdqa (%rax), %xmm0
3949+
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - {evex} vmovntdqa (%rax), %ymm0
39433950
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vmovshdup %xmm16, %xmm19
39443951
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovshdup (%rax), %xmm19
39453952
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vmovshdup %xmm16, %xmm19 {%k1}

llvm/test/tools/llvm-mca/X86/SapphireRapids/resources-avx512.s

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,8 @@ vmovdqu64 %zmm16, (%rax) {k1}
467467
vmovdqu64 %zmm16, %zmm19 {z}{k1}
468468
vmovdqu64 (%rax), %zmm19 {z}{k1}
469469

470+
vmovntdqa (%rax), %zmm0
471+
470472
vmovshdup %zmm16, %zmm19
471473
vmovshdup (%rax), %zmm19
472474
vmovshdup %zmm16, %zmm19 {k1}
@@ -1497,6 +1499,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
14971499
# CHECK-NEXT: 2 12 0.50 * vmovdqu64 %zmm16, (%rax) {%k1}
14981500
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1} {z}
14991501
# CHECK-NEXT: 2 9 0.50 * vmovdqu64 (%rax), %zmm19 {%k1} {z}
1502+
# CHECK-NEXT: 1 8 0.33 * vmovntdqa (%rax), %zmm0
15001503
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19
15011504
# CHECK-NEXT: 1 8 0.33 * vmovshdup (%rax), %zmm19
15021505
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19 {%k1}
@@ -2055,7 +2058,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
20552058

20562059
# CHECK: Resource pressure per iteration:
20572060
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]
2058-
# CHECK-NEXT: 508.60 13.60 218.33 218.33 48.50 578.60 1.60 48.50 48.50 48.50 1.60 218.33 -
2061+
# CHECK-NEXT: 508.60 13.60 218.67 218.67 48.50 578.60 1.60 48.50 48.50 48.50 1.60 218.67 -
20592062

20602063
# CHECK: Resource pressure by instruction:
20612064
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Instructions:
@@ -2468,6 +2471,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
24682471
# CHECK-NEXT: - - - - 0.50 - - 0.50 0.50 0.50 - - - vmovdqu64 %zmm16, (%rax) {%k1}
24692472
# CHECK-NEXT: 0.50 - - - - 0.50 - - - - - - - vmovdqu64 %zmm16, %zmm19 {%k1} {z}
24702473
# CHECK-NEXT: 0.50 - 0.33 0.33 - 0.50 - - - - - 0.33 - vmovdqu64 (%rax), %zmm19 {%k1} {z}
2474+
# CHECK-NEXT: - - 0.33 0.33 - - - - - - - 0.33 - vmovntdqa (%rax), %zmm0
24712475
# CHECK-NEXT: - - - - - 1.00 - - - - - - - vmovshdup %zmm16, %zmm19
24722476
# CHECK-NEXT: - - 0.33 0.33 - - - - - - - 0.33 - vmovshdup (%rax), %zmm19
24732477
# CHECK-NEXT: - - - - - 1.00 - - - - - - - vmovshdup %zmm16, %zmm19 {%k1}

llvm/test/tools/llvm-mca/X86/SapphireRapids/resources-avx512vl.s

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,9 @@ vmovddup (%rax), %ymm19 {k1}
750750
vmovddup %ymm16, %ymm19 {z}{k1}
751751
vmovddup (%rax), %ymm19 {z}{k1}
752752

753+
{evex} vmovntdqa (%rax), %xmm0
754+
{evex} vmovntdqa (%rax), %ymm0
755+
753756
vmovshdup %xmm16, %xmm19
754757
vmovshdup (%rax), %xmm19
755758
vmovshdup %xmm16, %xmm19 {k1}
@@ -2397,6 +2400,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
23972400
# CHECK-NEXT: 2 9 0.33 * vmovddup (%rax), %ymm19 {%k1}
23982401
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm16, %ymm19 {%k1} {z}
23992402
# CHECK-NEXT: 2 9 0.33 * vmovddup (%rax), %ymm19 {%k1} {z}
2403+
# CHECK-NEXT: 1 7 0.33 * {evex} vmovntdqa (%rax), %xmm0
2404+
# CHECK-NEXT: 1 8 0.33 * {evex} vmovntdqa (%rax), %ymm0
24002405
# CHECK-NEXT: 1 1 0.50 vmovshdup %xmm16, %xmm19
24012406
# CHECK-NEXT: 1 7 0.33 * vmovshdup (%rax), %xmm19
24022407
# CHECK-NEXT: 1 1 0.50 vmovshdup %xmm16, %xmm19 {%k1}
@@ -3269,7 +3274,7 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
32693274

32703275
# CHECK: Resource pressure per iteration:
32713276
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]
3272-
# CHECK-NEXT: 404.53 412.53 328.33 328.33 46.00 797.53 3.20 46.00 46.00 46.00 3.20 328.33 -
3277+
# CHECK-NEXT: 404.53 412.53 329.00 329.00 46.00 797.53 3.20 46.00 46.00 46.00 3.20 329.00 -
32733278

32743279
# CHECK: Resource pressure by instruction:
32753280
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Instructions:
@@ -3941,6 +3946,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
39413946
# CHECK-NEXT: 0.33 0.33 0.33 0.33 - 0.33 - - - - - 0.33 - vmovddup (%rax), %ymm19 {%k1}
39423947
# CHECK-NEXT: - - - - - 1.00 - - - - - - - vmovddup %ymm16, %ymm19 {%k1} {z}
39433948
# CHECK-NEXT: 0.33 0.33 0.33 0.33 - 0.33 - - - - - 0.33 - vmovddup (%rax), %ymm19 {%k1} {z}
3949+
# CHECK-NEXT: - - 0.33 0.33 - - - - - - - 0.33 - {evex} vmovntdqa (%rax), %xmm0
3950+
# CHECK-NEXT: - - 0.33 0.33 - - - - - - - 0.33 - {evex} vmovntdqa (%rax), %ymm0
39443951
# CHECK-NEXT: - 0.50 - - - 0.50 - - - - - - - vmovshdup %xmm16, %xmm19
39453952
# CHECK-NEXT: - - 0.33 0.33 - - - - - - - 0.33 - vmovshdup (%rax), %xmm19
39463953
# CHECK-NEXT: - 0.50 - - - 0.50 - - - - - - - vmovshdup %xmm16, %xmm19 {%k1}

llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,8 @@ vmovdqu64 %zmm16, (%rax) {k1}
467467
vmovdqu64 %zmm16, %zmm19 {z}{k1}
468468
vmovdqu64 (%rax), %zmm19 {z}{k1}
469469

470+
vmovntdqa (%rax), %zmm0
471+
470472
vmovshdup %zmm16, %zmm19
471473
vmovshdup (%rax), %zmm19
472474
vmovshdup %zmm16, %zmm19 {k1}
@@ -1497,6 +1499,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
14971499
# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %zmm16, (%rax) {%k1}
14981500
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1} {z}
14991501
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %zmm19 {%k1} {z}
1502+
# CHECK-NEXT: 1 7 0.50 * vmovntdqa (%rax), %zmm0
15001503
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19
15011504
# CHECK-NEXT: 2 8 0.50 * vmovshdup (%rax), %zmm19
15021505
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19 {%k1}
@@ -2052,7 +2055,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
20522055

20532056
# CHECK: Resource pressure per iteration:
20542057
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
2055-
# CHECK-NEXT: - 612.00 352.67 103.67 359.83 359.83 97.00 651.67 6.00 32.33
2058+
# CHECK-NEXT: - 612.00 352.67 103.67 360.33 360.33 97.00 651.67 6.00 32.33
20562059

20572060
# CHECK: Resource pressure by instruction:
20582061
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -2465,6 +2468,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
24652468
# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 vmovdqu64 %zmm16, (%rax) {%k1}
24662469
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - vmovdqu64 %zmm16, %zmm19 {%k1} {z}
24672470
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vmovdqu64 (%rax), %zmm19 {%k1} {z}
2471+
# CHECK-NEXT: - - - - 0.50 0.50 - - - - vmovntdqa (%rax), %zmm0
24682472
# CHECK-NEXT: - - - - - - - 1.00 - - vmovshdup %zmm16, %zmm19
24692473
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vmovshdup (%rax), %zmm19
24702474
# CHECK-NEXT: - - - - - - - 1.00 - - vmovshdup %zmm16, %zmm19 {%k1}

llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,9 @@ vmovddup (%rax), %ymm19 {k1}
750750
vmovddup %ymm16, %ymm19 {z}{k1}
751751
vmovddup (%rax), %ymm19 {z}{k1}
752752

753+
{evex} vmovntdqa (%rax), %xmm0
754+
{evex} vmovntdqa (%rax), %ymm0
755+
753756
vmovshdup %xmm16, %xmm19
754757
vmovshdup (%rax), %xmm19
755758
vmovshdup %xmm16, %xmm19 {k1}
@@ -2397,6 +2400,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
23972400
# CHECK-NEXT: 2 8 0.50 * vmovddup (%rax), %ymm19 {%k1}
23982401
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm16, %ymm19 {%k1} {z}
23992402
# CHECK-NEXT: 2 8 0.50 * vmovddup (%rax), %ymm19 {%k1} {z}
2403+
# CHECK-NEXT: 2 7 0.50 * {evex} vmovntdqa (%rax), %xmm0
2404+
# CHECK-NEXT: 2 8 0.50 * {evex} vmovntdqa (%rax), %ymm0
24002405
# CHECK-NEXT: 1 1 1.00 vmovshdup %xmm16, %xmm19
24012406
# CHECK-NEXT: 2 7 0.50 * vmovshdup (%rax), %xmm19
24022407
# CHECK-NEXT: 1 1 1.00 vmovshdup %xmm16, %xmm19 {%k1}
@@ -3266,7 +3271,7 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
32663271

32673272
# CHECK: Resource pressure per iteration:
32683273
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
3269-
# CHECK-NEXT: - 423.00 462.33 358.33 521.83 521.83 88.00 801.33 12.00 29.33
3274+
# CHECK-NEXT: - 423.00 463.00 359.00 522.83 522.83 88.00 802.00 12.00 29.33
32703275

32713276
# CHECK: Resource pressure by instruction:
32723277
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -3938,6 +3943,8 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
39383943
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vmovddup (%rax), %ymm19 {%k1}
39393944
# CHECK-NEXT: - - - - - - - 1.00 - - vmovddup %ymm16, %ymm19 {%k1} {z}
39403945
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vmovddup (%rax), %ymm19 {%k1} {z}
3946+
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - {evex} vmovntdqa (%rax), %xmm0
3947+
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - {evex} vmovntdqa (%rax), %ymm0
39413948
# CHECK-NEXT: - - - - - - - 1.00 - - vmovshdup %xmm16, %xmm19
39423949
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vmovshdup (%rax), %xmm19
39433950
# CHECK-NEXT: - - - - - - - 1.00 - - vmovshdup %xmm16, %xmm19 {%k1}

0 commit comments

Comments
 (0)