[llvm] r343701 - [X86][Btver2] Fix MMX PSHUFB schedule
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 3 11:18:51 PDT 2018
Author: rksimon
Date: Wed Oct 3 11:18:50 2018
New Revision: 343701
URL: http://llvm.org/viewvc/llvm-project?rev=343701&view=rev
Log:
[X86][Btver2] Fix MMX PSHUFB schedule
Match AMD Fam16h SOG + llvm-exegesis tests
Modified:
llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td
llvm/trunk/test/CodeGen/X86/mmx-schedule.ll
llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s
Modified: llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td?rev=343701&r1=343700&r2=343701&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td (original)
+++ llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td Wed Oct 3 11:18:50 2018
@@ -500,7 +500,7 @@ defm : JWriteResFpuPair<WriteShuffle,
defm : JWriteResFpuPair<WriteShuffleX, [JFPU01, JVALU], 1>;
defm : X86WriteResPairUnsupported<WriteShuffleY>;
defm : X86WriteResPairUnsupported<WriteShuffleZ>;
-defm : JWriteResFpuPair<WriteVarShuffle, [JFPU01, JVALU], 2, [1, 4], 3>;
+defm : JWriteResFpuPair<WriteVarShuffle, [JFPU01, JVALU], 2, [1, 1], 1>;
defm : JWriteResFpuPair<WriteVarShuffleX, [JFPU01, JVALU], 2, [1, 4], 3>;
defm : X86WriteResPairUnsupported<WriteVarShuffleY>;
defm : X86WriteResPairUnsupported<WriteVarShuffleZ>;
Modified: llvm/trunk/test/CodeGen/X86/mmx-schedule.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/mmx-schedule.ll?rev=343701&r1=343700&r2=343701&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/mmx-schedule.ll (original)
+++ llvm/trunk/test/CodeGen/X86/mmx-schedule.ll Wed Oct 3 11:18:50 2018
@@ -4715,8 +4715,8 @@ define i64 @test_pshufb(x86_mmx %a0, x86
;
; BTVER2-LABEL: test_pshufb:
; BTVER2: # %bb.0:
-; BTVER2-NEXT: pshufb %mm1, %mm0 # sched: [2:2.00]
-; BTVER2-NEXT: pshufb (%rdi), %mm0 # sched: [7:2.00]
+; BTVER2-NEXT: pshufb %mm1, %mm0 # sched: [2:0.50]
+; BTVER2-NEXT: pshufb (%rdi), %mm0 # sched: [7:1.00]
; BTVER2-NEXT: movq %mm0, %rax # sched: [4:1.00]
; BTVER2-NEXT: retq # sched: [4:1.00]
;
Modified: llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s?rev=343701&r1=343700&r2=343701&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-ssse3.s Wed Oct 3 11:18:50 2018
@@ -154,8 +154,8 @@ psignw (%rax), %xmm2
# CHECK-NEXT: 1 7 1.00 * pmulhrsw (%rax), %mm2
# CHECK-NEXT: 1 2 1.00 pmulhrsw %xmm0, %xmm2
# CHECK-NEXT: 1 7 1.00 * pmulhrsw (%rax), %xmm2
-# CHECK-NEXT: 3 2 2.00 pshufb %mm0, %mm2
-# CHECK-NEXT: 3 7 2.00 * pshufb (%rax), %mm2
+# CHECK-NEXT: 1 2 0.50 pshufb %mm0, %mm2
+# CHECK-NEXT: 1 7 1.00 * pshufb (%rax), %mm2
# CHECK-NEXT: 3 2 2.00 pshufb %xmm0, %xmm2
# CHECK-NEXT: 3 7 2.00 * pshufb (%rax), %xmm2
# CHECK-NEXT: 1 1 0.50 psignb %mm0, %mm2
@@ -189,7 +189,7 @@ psignw (%rax), %xmm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]
-# CHECK-NEXT: - - - - - 36.00 28.00 32.00 - - - 34.00 34.00 8.00
+# CHECK-NEXT: - - - - - 36.00 28.00 32.00 - - - 31.00 31.00 8.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Instructions:
@@ -241,8 +241,8 @@ psignw (%rax), %xmm2
# CHECK-NEXT: - - - - - 1.00 - 1.00 - - - - - 1.00 pmulhrsw (%rax), %mm2
# CHECK-NEXT: - - - - - 1.00 - - - - - - - 1.00 pmulhrsw %xmm0, %xmm2
# CHECK-NEXT: - - - - - 1.00 - 1.00 - - - - - 1.00 pmulhrsw (%rax), %xmm2
-# CHECK-NEXT: - - - - - 0.50 0.50 - - - - 2.00 2.00 - pshufb %mm0, %mm2
-# CHECK-NEXT: - - - - - 0.50 0.50 1.00 - - - 2.00 2.00 - pshufb (%rax), %mm2
+# CHECK-NEXT: - - - - - 0.50 0.50 - - - - 0.50 0.50 - pshufb %mm0, %mm2
+# CHECK-NEXT: - - - - - 0.50 0.50 1.00 - - - 0.50 0.50 - pshufb (%rax), %mm2
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - 2.00 2.00 - pshufb %xmm0, %xmm2
# CHECK-NEXT: - - - - - 0.50 0.50 1.00 - - - 2.00 2.00 - pshufb (%rax), %xmm2
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - 0.50 0.50 - psignb %mm0, %mm2
More information about the llvm-commits
mailing list