[X86][Btver2] Fix MMX PSHUFB schedule

Match AMD Fam16h SOG + llvm-exegesis tests

llvm-svn: 343701
This commit is contained in:
Simon Pilgrim 2018-10-03 18:18:50 +00:00
parent a400612aed
commit 0b451a2983
3 changed files with 8 additions and 8 deletions

View File

@ -500,7 +500,7 @@ defm : JWriteResFpuPair<WriteShuffle, [JFPU01, JVALU], 1>;
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>;

View File

@ -4715,8 +4715,8 @@ define i64 @test_pshufb(x86_mmx %a0, x86_mmx %a1, x86_mmx *%a2) optsize {
;
; 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]
;

View File

@ -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