znver1/2 models were missing the vtestps/pd overrides to match the vptest integer equivalents.
Noticed while investigating Issue #54889
defm : ZnWriteResFpuPair<WriteFLogic, [ZnFPU], 1>;
defm : ZnWriteResFpuPair<WriteFLogicY, [ZnFPU], 1>;
defm : X86WriteResPairUnsupported<WriteFLogicZ>;
-defm : ZnWriteResFpuPair<WriteFTest, [ZnFPU], 1>;
-defm : ZnWriteResFpuPair<WriteFTestY, [ZnFPU], 1>;
+defm : ZnWriteResFpuPair<WriteFTest, [ZnFPU12], 1, [2], 1, 7, 1>;
+defm : ZnWriteResFpuPair<WriteFTestY, [ZnFPU12], 1, [2], 1, 7, 1>;
defm : X86WriteResPairUnsupported<WriteFTestZ>;
defm : ZnWriteResFpuPair<WriteFShuffle, [ZnFPU12], 1>;
defm : ZnWriteResFpuPair<WriteFShuffleY, [ZnFPU12], 1>;
defm : Zn2WriteResFpuPair<WriteFLogic, [Zn2FPU], 1>;
defm : Zn2WriteResFpuPair<WriteFLogicY, [Zn2FPU], 1>;
defm : X86WriteResPairUnsupported<WriteFLogicZ>;
-defm : Zn2WriteResFpuPair<WriteFTest, [Zn2FPU], 1>;
-defm : Zn2WriteResFpuPair<WriteFTestY, [Zn2FPU], 1>;
+defm : Zn2WriteResFpuPair<WriteFTest, [Zn2FPU12], 1, [2], 1, 7, 1>;
+defm : Zn2WriteResFpuPair<WriteFTestY, [Zn2FPU12], 1, [2], 1, 7, 1>;
defm : X86WriteResPairUnsupported<WriteFTestZ>;
defm : Zn2WriteResFpuPair<WriteFShuffle, [Zn2FPU12], 1>;
defm : Zn2WriteResFpuPair<WriteFShuffleY, [Zn2FPU12], 1>;
# CHECK-NEXT: 1 10 0.50 * vsubsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 3 0.50 vsubss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 10 0.50 * vsubss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 1 0.25 vtestpd %xmm0, %xmm1
-# CHECK-NEXT: 1 8 0.50 * vtestpd (%rax), %xmm1
-# CHECK-NEXT: 1 1 0.25 vtestpd %ymm0, %ymm1
-# CHECK-NEXT: 1 8 0.50 * vtestpd (%rax), %ymm1
-# CHECK-NEXT: 1 1 0.25 vtestps %xmm0, %xmm1
-# CHECK-NEXT: 1 8 0.50 * vtestps (%rax), %xmm1
-# CHECK-NEXT: 1 1 0.25 vtestps %ymm0, %ymm1
-# CHECK-NEXT: 1 8 0.50 * vtestps (%rax), %ymm1
+# CHECK-NEXT: 1 1 1.00 vtestpd %xmm0, %xmm1
+# CHECK-NEXT: 2 8 1.00 * vtestpd (%rax), %xmm1
+# CHECK-NEXT: 1 1 1.00 vtestpd %ymm0, %ymm1
+# CHECK-NEXT: 2 8 1.00 * vtestpd (%rax), %ymm1
+# CHECK-NEXT: 1 1 1.00 vtestps %xmm0, %xmm1
+# CHECK-NEXT: 2 8 1.00 * vtestps (%rax), %xmm1
+# CHECK-NEXT: 1 1 1.00 vtestps %ymm0, %ymm1
+# CHECK-NEXT: 2 8 1.00 * vtestps (%rax), %ymm1
# CHECK-NEXT: 2 3 1.00 vucomisd %xmm0, %xmm1
# CHECK-NEXT: 2 10 1.00 * vucomisd (%rax), %xmm1
# CHECK-NEXT: 2 3 1.00 vucomiss %xmm0, %xmm1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: 175.00 175.00 - - - - - 144.58 169.08 204.25 525.08 -
+# CHECK-NEXT: 175.00 175.00 - - - - - 142.58 175.08 210.25 523.08 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
# CHECK-NEXT: 0.50 0.50 - - - - - - - 0.50 0.50 - vsubsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - - 0.50 0.50 - vsubss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 0.50 0.50 - - - - - - - 0.50 0.50 - vsubss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vtestpd %xmm0, %xmm1
-# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vtestpd (%rax), %xmm1
-# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vtestpd %ymm0, %ymm1
-# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vtestpd (%rax), %ymm1
-# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vtestps %xmm0, %xmm1
-# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vtestps (%rax), %xmm1
-# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vtestps %ymm0, %ymm1
-# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vtestps (%rax), %ymm1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - vtestpd %xmm0, %xmm1
+# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 1.00 - - vtestpd (%rax), %xmm1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - vtestpd %ymm0, %ymm1
+# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 1.00 - - vtestpd (%rax), %ymm1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - vtestps %xmm0, %xmm1
+# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 1.00 - - vtestps (%rax), %xmm1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - vtestps %ymm0, %ymm1
+# CHECK-NEXT: 0.50 0.50 - - - - - - 1.00 1.00 - - vtestps (%rax), %ymm1
# CHECK-NEXT: - - - - - - - 0.50 0.50 1.00 - - vucomisd %xmm0, %xmm1
# CHECK-NEXT: 0.50 0.50 - - - - - 0.50 0.50 1.00 - - vucomisd (%rax), %xmm1
# CHECK-NEXT: - - - - - - - 0.50 0.50 1.00 - - vucomiss %xmm0, %xmm1
# CHECK-NEXT: 1 10 0.50 * vsubsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 3 0.50 vsubss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 10 0.50 * vsubss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 1 0.25 vtestpd %xmm0, %xmm1
-# CHECK-NEXT: 1 8 0.33 * vtestpd (%rax), %xmm1
-# CHECK-NEXT: 1 1 0.25 vtestpd %ymm0, %ymm1
-# CHECK-NEXT: 1 8 0.33 * vtestpd (%rax), %ymm1
-# CHECK-NEXT: 1 1 0.25 vtestps %xmm0, %xmm1
-# CHECK-NEXT: 1 8 0.33 * vtestps (%rax), %xmm1
-# CHECK-NEXT: 1 1 0.25 vtestps %ymm0, %ymm1
-# CHECK-NEXT: 1 8 0.33 * vtestps (%rax), %ymm1
+# CHECK-NEXT: 1 1 1.00 vtestpd %xmm0, %xmm1
+# CHECK-NEXT: 2 8 1.00 * vtestpd (%rax), %xmm1
+# CHECK-NEXT: 1 1 1.00 vtestpd %ymm0, %ymm1
+# CHECK-NEXT: 2 8 1.00 * vtestpd (%rax), %ymm1
+# CHECK-NEXT: 1 1 1.00 vtestps %xmm0, %xmm1
+# CHECK-NEXT: 2 8 1.00 * vtestps (%rax), %xmm1
+# CHECK-NEXT: 1 1 1.00 vtestps %ymm0, %ymm1
+# CHECK-NEXT: 2 8 1.00 * vtestps (%rax), %ymm1
# CHECK-NEXT: 2 3 1.00 vucomisd %xmm0, %xmm1
# CHECK-NEXT: 2 10 1.00 * vucomisd (%rax), %xmm1
# CHECK-NEXT: 2 3 1.00 vucomiss %xmm0, %xmm1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]
-# CHECK-NEXT: 117.00 117.00 117.00 0.25 0.25 0.25 0.25 - 135.92 163.42 200.25 469.42 -
+# CHECK-NEXT: 117.00 117.00 117.00 0.25 0.25 0.25 0.25 - 133.92 169.42 206.25 467.42 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Instructions:
# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - - 0.50 0.50 - vsubsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - - - 0.50 0.50 - vsubss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - - 0.50 0.50 - vsubss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 0.25 0.25 0.25 0.25 - vtestpd %xmm0, %xmm1
-# CHECK-NEXT: 0.33 0.33 0.33 - - - - - 0.25 0.25 0.25 0.25 - vtestpd (%rax), %xmm1
-# CHECK-NEXT: - - - - - - - - 0.25 0.25 0.25 0.25 - vtestpd %ymm0, %ymm1
-# CHECK-NEXT: 0.33 0.33 0.33 - - - - - 0.25 0.25 0.25 0.25 - vtestpd (%rax), %ymm1
-# CHECK-NEXT: - - - - - - - - 0.25 0.25 0.25 0.25 - vtestps %xmm0, %xmm1
-# CHECK-NEXT: 0.33 0.33 0.33 - - - - - 0.25 0.25 0.25 0.25 - vtestps (%rax), %xmm1
-# CHECK-NEXT: - - - - - - - - 0.25 0.25 0.25 0.25 - vtestps %ymm0, %ymm1
-# CHECK-NEXT: 0.33 0.33 0.33 - - - - - 0.25 0.25 0.25 0.25 - vtestps (%rax), %ymm1
+# CHECK-NEXT: - - - - - - - - - 1.00 1.00 - - vtestpd %xmm0, %xmm1
+# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - 1.00 1.00 - - vtestpd (%rax), %xmm1
+# CHECK-NEXT: - - - - - - - - - 1.00 1.00 - - vtestpd %ymm0, %ymm1
+# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - 1.00 1.00 - - vtestpd (%rax), %ymm1
+# CHECK-NEXT: - - - - - - - - - 1.00 1.00 - - vtestps %xmm0, %xmm1
+# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - 1.00 1.00 - - vtestps (%rax), %xmm1
+# CHECK-NEXT: - - - - - - - - - 1.00 1.00 - - vtestps %ymm0, %ymm1
+# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - 1.00 1.00 - - vtestps (%rax), %ymm1
# CHECK-NEXT: - - - - - - - - 0.50 0.50 1.00 - - vucomisd %xmm0, %xmm1
# CHECK-NEXT: 0.33 0.33 0.33 - - - - - 0.50 0.50 1.00 - - vucomisd (%rax), %xmm1
# CHECK-NEXT: - - - - - - - - 0.50 0.50 1.00 - - vucomiss %xmm0, %xmm1