Skip to content

Commit 44cfc51

Browse files
committedDec 7, 2017
Add proper BTVER2 sched support for MOV instr.
Differential Revision: https://reviews.llvm.org/D40345 llvm-svn: 320034
1 parent e385d00 commit 44cfc51

9 files changed

+128
-128
lines changed
 

‎llvm/lib/Target/X86/X86ScheduleBtVer2.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ def: InstRW<[WriteSHLDm], (instregex "SHRD(16|32|64)mr(i8|CL)")>;
166166

167167
def : WriteRes<WriteLoad, [JLAGU]> { let Latency = 5; }
168168
def : WriteRes<WriteStore, [JSAGU]>;
169-
def : WriteRes<WriteMove, [JAny]>;
169+
def : WriteRes<WriteMove, [JALU01]>;
170170

171171
////////////////////////////////////////////////////////////////////////////////
172172
// Idioms that clear a register, like xorps %xmm0, %xmm0.

‎llvm/test/CodeGen/X86/mmx-schedule.ll

Lines changed: 83 additions & 83 deletions
Large diffs are not rendered by default.

‎llvm/test/CodeGen/X86/mul-constant-i32.ll

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ define i32 @test_mul_by_1(i32 %x) {
2121
;
2222
; X64-JAG-LABEL: test_mul_by_1:
2323
; X64-JAG: # %bb.0:
24-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
24+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
2525
; X64-JAG-NEXT: retq # sched: [4:1.00]
2626
;
2727
; X86-NOOPT-LABEL: test_mul_by_1:
@@ -36,7 +36,7 @@ define i32 @test_mul_by_1(i32 %x) {
3636
;
3737
; JAG-NOOPT-LABEL: test_mul_by_1:
3838
; JAG-NOOPT: # %bb.0:
39-
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.17]
39+
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.50]
4040
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
4141
;
4242
; X64-SLM-LABEL: test_mul_by_1:
@@ -787,7 +787,7 @@ define i32 @test_mul_by_16(i32 %x) {
787787
; X64-JAG-LABEL: test_mul_by_16:
788788
; X64-JAG: # %bb.0:
789789
; X64-JAG-NEXT: shll $4, %edi # sched: [1:0.50]
790-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
790+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
791791
; X64-JAG-NEXT: retq # sched: [4:1.00]
792792
;
793793
; X86-NOOPT-LABEL: test_mul_by_16:
@@ -805,7 +805,7 @@ define i32 @test_mul_by_16(i32 %x) {
805805
; JAG-NOOPT-LABEL: test_mul_by_16:
806806
; JAG-NOOPT: # %bb.0:
807807
; JAG-NOOPT-NEXT: shll $4, %edi # sched: [1:0.50]
808-
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.17]
808+
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.50]
809809
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
810810
;
811811
; X64-SLM-LABEL: test_mul_by_16:
@@ -843,7 +843,7 @@ define i32 @test_mul_by_17(i32 %x) {
843843
; X64-JAG-LABEL: test_mul_by_17:
844844
; X64-JAG: # %bb.0:
845845
; X64-JAG-NEXT: # kill: def %edi killed %edi def %rdi
846-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
846+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
847847
; X64-JAG-NEXT: shll $4, %eax # sched: [1:0.50]
848848
; X64-JAG-NEXT: leal (%rax,%rdi), %eax # sched: [1:0.50]
849849
; X64-JAG-NEXT: retq # sched: [4:1.00]
@@ -1530,7 +1530,7 @@ define i32 @test_mul_by_30(i32 %x) {
15301530
;
15311531
; X64-JAG-LABEL: test_mul_by_30:
15321532
; X64-JAG: # %bb.0:
1533-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
1533+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
15341534
; X64-JAG-NEXT: shll $5, %eax # sched: [1:0.50]
15351535
; X64-JAG-NEXT: subl %edi, %eax # sched: [1:0.50]
15361536
; X64-JAG-NEXT: subl %edi, %eax # sched: [1:0.50]
@@ -1582,7 +1582,7 @@ define i32 @test_mul_by_31(i32 %x) {
15821582
;
15831583
; X64-JAG-LABEL: test_mul_by_31:
15841584
; X64-JAG: # %bb.0:
1585-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
1585+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
15861586
; X64-JAG-NEXT: shll $5, %eax # sched: [1:0.50]
15871587
; X64-JAG-NEXT: subl %edi, %eax # sched: [1:0.50]
15881588
; X64-JAG-NEXT: retq # sched: [4:1.00]
@@ -1633,7 +1633,7 @@ define i32 @test_mul_by_32(i32 %x) {
16331633
; X64-JAG-LABEL: test_mul_by_32:
16341634
; X64-JAG: # %bb.0:
16351635
; X64-JAG-NEXT: shll $5, %edi # sched: [1:0.50]
1636-
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.17]
1636+
; X64-JAG-NEXT: movl %edi, %eax # sched: [1:0.50]
16371637
; X64-JAG-NEXT: retq # sched: [4:1.00]
16381638
;
16391639
; X86-NOOPT-LABEL: test_mul_by_32:
@@ -1651,7 +1651,7 @@ define i32 @test_mul_by_32(i32 %x) {
16511651
; JAG-NOOPT-LABEL: test_mul_by_32:
16521652
; JAG-NOOPT: # %bb.0:
16531653
; JAG-NOOPT-NEXT: shll $5, %edi # sched: [1:0.50]
1654-
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.17]
1654+
; JAG-NOOPT-NEXT: movl %edi, %eax # sched: [1:0.50]
16551655
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
16561656
;
16571657
; X64-SLM-LABEL: test_mul_by_32:

‎llvm/test/CodeGen/X86/mul-constant-i64.ll

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ define i64 @test_mul_by_1(i64 %x) nounwind {
2222
;
2323
; X64-JAG-LABEL: test_mul_by_1:
2424
; X64-JAG: # %bb.0:
25-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
25+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
2626
; X64-JAG-NEXT: retq # sched: [4:1.00]
2727
;
2828
; X86-NOOPT-LABEL: test_mul_by_1:
@@ -38,7 +38,7 @@ define i64 @test_mul_by_1(i64 %x) nounwind {
3838
;
3939
; JAG-NOOPT-LABEL: test_mul_by_1:
4040
; JAG-NOOPT: # %bb.0:
41-
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.17]
41+
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.50]
4242
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
4343
;
4444
; X64-SLM-LABEL: test_mul_by_1:
@@ -809,7 +809,7 @@ define i64 @test_mul_by_16(i64 %x) {
809809
; X64-JAG-LABEL: test_mul_by_16:
810810
; X64-JAG: # %bb.0:
811811
; X64-JAG-NEXT: shlq $4, %rdi # sched: [1:0.50]
812-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
812+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
813813
; X64-JAG-NEXT: retq # sched: [4:1.00]
814814
;
815815
; X86-NOOPT-LABEL: test_mul_by_16:
@@ -829,7 +829,7 @@ define i64 @test_mul_by_16(i64 %x) {
829829
; JAG-NOOPT-LABEL: test_mul_by_16:
830830
; JAG-NOOPT: # %bb.0:
831831
; JAG-NOOPT-NEXT: shlq $4, %rdi # sched: [1:0.50]
832-
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.17]
832+
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.50]
833833
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
834834
;
835835
; X64-SLM-LABEL: test_mul_by_16:
@@ -868,7 +868,7 @@ define i64 @test_mul_by_17(i64 %x) {
868868
;
869869
; X64-JAG-LABEL: test_mul_by_17:
870870
; X64-JAG: # %bb.0:
871-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
871+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
872872
; X64-JAG-NEXT: shlq $4, %rax # sched: [1:0.50]
873873
; X64-JAG-NEXT: leaq (%rax,%rdi), %rax # sched: [1:0.50]
874874
; X64-JAG-NEXT: retq # sched: [4:1.00]
@@ -1600,7 +1600,7 @@ define i64 @test_mul_by_30(i64 %x) {
16001600
;
16011601
; X64-JAG-LABEL: test_mul_by_30:
16021602
; X64-JAG: # %bb.0:
1603-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
1603+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
16041604
; X64-JAG-NEXT: shlq $5, %rax # sched: [1:0.50]
16051605
; X64-JAG-NEXT: subq %rdi, %rax # sched: [1:0.50]
16061606
; X64-JAG-NEXT: subq %rdi, %rax # sched: [1:0.50]
@@ -1658,7 +1658,7 @@ define i64 @test_mul_by_31(i64 %x) {
16581658
;
16591659
; X64-JAG-LABEL: test_mul_by_31:
16601660
; X64-JAG: # %bb.0:
1661-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
1661+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
16621662
; X64-JAG-NEXT: shlq $5, %rax # sched: [1:0.50]
16631663
; X64-JAG-NEXT: subq %rdi, %rax # sched: [1:0.50]
16641664
; X64-JAG-NEXT: retq # sched: [4:1.00]
@@ -1714,7 +1714,7 @@ define i64 @test_mul_by_32(i64 %x) {
17141714
; X64-JAG-LABEL: test_mul_by_32:
17151715
; X64-JAG: # %bb.0:
17161716
; X64-JAG-NEXT: shlq $5, %rdi # sched: [1:0.50]
1717-
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.17]
1717+
; X64-JAG-NEXT: movq %rdi, %rax # sched: [1:0.50]
17181718
; X64-JAG-NEXT: retq # sched: [4:1.00]
17191719
;
17201720
; X86-NOOPT-LABEL: test_mul_by_32:
@@ -1734,7 +1734,7 @@ define i64 @test_mul_by_32(i64 %x) {
17341734
; JAG-NOOPT-LABEL: test_mul_by_32:
17351735
; JAG-NOOPT: # %bb.0:
17361736
; JAG-NOOPT-NEXT: shlq $5, %rdi # sched: [1:0.50]
1737-
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.17]
1737+
; JAG-NOOPT-NEXT: movq %rdi, %rax # sched: [1:0.50]
17381738
; JAG-NOOPT-NEXT: retq # sched: [4:1.00]
17391739
;
17401740
; X64-SLM-LABEL: test_mul_by_32:

‎llvm/test/CodeGen/X86/schedule-x86_64.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,7 @@ define i32 @test_bswap32(i32 %a0) optsize {
665665
; BTVER2-LABEL: test_bswap32:
666666
; BTVER2: # %bb.0:
667667
; BTVER2-NEXT: bswapl %edi # sched: [1:0.50]
668-
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.17]
668+
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.50]
669669
; BTVER2-NEXT: retq # sched: [4:1.00]
670670
;
671671
; ZNVER1-LABEL: test_bswap32:
@@ -728,7 +728,7 @@ define i64 @test_bswap64(i64 %a0) optsize {
728728
; BTVER2-LABEL: test_bswap64:
729729
; BTVER2: # %bb.0:
730730
; BTVER2-NEXT: bswapq %rdi # sched: [1:0.50]
731-
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.17]
731+
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.50]
732732
; BTVER2-NEXT: retq # sched: [4:1.00]
733733
;
734734
; ZNVER1-LABEL: test_bswap64:

‎llvm/test/CodeGen/X86/sse2-schedule.ll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2838,11 +2838,11 @@ define i32 @test_movd(<4 x i32> %a0, i32 %a1, i32 *%a2) {
28382838
; BTVER2-LABEL: test_movd:
28392839
; BTVER2: # %bb.0:
28402840
; BTVER2-NEXT: vmovd {{.*#+}} xmm2 = mem[0],zero,zero,zero sched: [5:1.00]
2841-
; BTVER2-NEXT: vmovd %edi, %xmm1 # sched: [1:0.17]
2841+
; BTVER2-NEXT: vmovd %edi, %xmm1 # sched: [1:0.50]
28422842
; BTVER2-NEXT: vpaddd %xmm1, %xmm0, %xmm1 # sched: [1:0.50]
28432843
; BTVER2-NEXT: vmovd %xmm1, (%rsi) # sched: [1:1.00]
28442844
; BTVER2-NEXT: vpaddd %xmm2, %xmm0, %xmm0 # sched: [1:0.50]
2845-
; BTVER2-NEXT: vmovd %xmm0, %eax # sched: [1:0.17]
2845+
; BTVER2-NEXT: vmovd %xmm0, %eax # sched: [1:0.50]
28462846
; BTVER2-NEXT: retq # sched: [4:1.00]
28472847
;
28482848
; ZNVER1-LABEL: test_movd:
@@ -2949,11 +2949,11 @@ define i64 @test_movd_64(<2 x i64> %a0, i64 %a1, i64 *%a2) {
29492949
; BTVER2-LABEL: test_movd_64:
29502950
; BTVER2: # %bb.0:
29512951
; BTVER2-NEXT: vmovq {{.*#+}} xmm2 = mem[0],zero sched: [5:1.00]
2952-
; BTVER2-NEXT: vmovq %rdi, %xmm1 # sched: [1:0.17]
2952+
; BTVER2-NEXT: vmovq %rdi, %xmm1 # sched: [1:0.50]
29532953
; BTVER2-NEXT: vpaddq %xmm1, %xmm0, %xmm1 # sched: [1:0.50]
29542954
; BTVER2-NEXT: vmovq %xmm1, (%rsi) # sched: [1:1.00]
29552955
; BTVER2-NEXT: vpaddq %xmm2, %xmm0, %xmm0 # sched: [1:0.50]
2956-
; BTVER2-NEXT: vmovq %xmm0, %rax # sched: [1:0.17]
2956+
; BTVER2-NEXT: vmovq %xmm0, %rax # sched: [1:0.50]
29572957
; BTVER2-NEXT: retq # sched: [4:1.00]
29582958
;
29592959
; ZNVER1-LABEL: test_movd_64:

‎llvm/test/CodeGen/X86/sse3-schedule.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ define void @test_monitor(i8* %a0, i32 %a1, i32 %a2) {
530530
; BTVER2-LABEL: test_monitor:
531531
; BTVER2: # %bb.0:
532532
; BTVER2-NEXT: leaq (%rdi), %rax # sched: [1:0.50]
533-
; BTVER2-NEXT: movl %esi, %ecx # sched: [1:0.17]
533+
; BTVER2-NEXT: movl %esi, %ecx # sched: [1:0.50]
534534
; BTVER2-NEXT: monitor # sched: [100:0.17]
535535
; BTVER2-NEXT: retq # sched: [4:1.00]
536536
;
@@ -838,8 +838,8 @@ define void @test_mwait(i32 %a0, i32 %a1) {
838838
;
839839
; BTVER2-LABEL: test_mwait:
840840
; BTVER2: # %bb.0:
841-
; BTVER2-NEXT: movl %edi, %ecx # sched: [1:0.17]
842-
; BTVER2-NEXT: movl %esi, %eax # sched: [1:0.17]
841+
; BTVER2-NEXT: movl %edi, %ecx # sched: [1:0.50]
842+
; BTVER2-NEXT: movl %esi, %eax # sched: [1:0.50]
843843
; BTVER2-NEXT: mwait # sched: [100:0.17]
844844
; BTVER2-NEXT: retq # sched: [4:1.00]
845845
;

‎llvm/test/CodeGen/X86/sse42-schedule.ll

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ define i32 @crc32_32_8(i32 %a0, i8 %a1, i8 *%a2) {
6464
; BTVER2: # %bb.0:
6565
; BTVER2-NEXT: crc32b %sil, %edi # sched: [3:1.00]
6666
; BTVER2-NEXT: crc32b (%rdx), %edi # sched: [8:1.00]
67-
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.17]
67+
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.50]
6868
; BTVER2-NEXT: retq # sched: [4:1.00]
6969
;
7070
; ZNVER1-LABEL: crc32_32_8:
@@ -134,7 +134,7 @@ define i32 @crc32_32_16(i32 %a0, i16 %a1, i16 *%a2) {
134134
; BTVER2: # %bb.0:
135135
; BTVER2-NEXT: crc32w %si, %edi # sched: [3:1.00]
136136
; BTVER2-NEXT: crc32w (%rdx), %edi # sched: [8:1.00]
137-
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.17]
137+
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.50]
138138
; BTVER2-NEXT: retq # sched: [4:1.00]
139139
;
140140
; ZNVER1-LABEL: crc32_32_16:
@@ -204,7 +204,7 @@ define i32 @crc32_32_32(i32 %a0, i32 %a1, i32 *%a2) {
204204
; BTVER2: # %bb.0:
205205
; BTVER2-NEXT: crc32l %esi, %edi # sched: [3:1.00]
206206
; BTVER2-NEXT: crc32l (%rdx), %edi # sched: [8:1.00]
207-
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.17]
207+
; BTVER2-NEXT: movl %edi, %eax # sched: [1:0.50]
208208
; BTVER2-NEXT: retq # sched: [4:1.00]
209209
;
210210
; ZNVER1-LABEL: crc32_32_32:
@@ -274,7 +274,7 @@ define i64 @crc32_64_8(i64 %a0, i8 %a1, i8 *%a2) nounwind {
274274
; BTVER2: # %bb.0:
275275
; BTVER2-NEXT: crc32b %sil, %edi # sched: [3:1.00]
276276
; BTVER2-NEXT: crc32b (%rdx), %edi # sched: [8:1.00]
277-
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.17]
277+
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.50]
278278
; BTVER2-NEXT: retq # sched: [4:1.00]
279279
;
280280
; ZNVER1-LABEL: crc32_64_8:
@@ -344,7 +344,7 @@ define i64 @crc32_64_64(i64 %a0, i64 %a1, i64 *%a2) {
344344
; BTVER2: # %bb.0:
345345
; BTVER2-NEXT: crc32q %rsi, %rdi # sched: [3:1.00]
346346
; BTVER2-NEXT: crc32q (%rdx), %rdi # sched: [8:1.00]
347-
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.17]
347+
; BTVER2-NEXT: movq %rdi, %rax # sched: [1:0.50]
348348
; BTVER2-NEXT: retq # sched: [4:1.00]
349349
;
350350
; ZNVER1-LABEL: crc32_64_64:
@@ -454,12 +454,12 @@ define i32 @test_pcmpestri(<16 x i8> %a0, <16 x i8> %a1, <16 x i8> *%a2) {
454454
;
455455
; BTVER2-LABEL: test_pcmpestri:
456456
; BTVER2: # %bb.0:
457-
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.17]
458-
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.17]
457+
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.50]
458+
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.50]
459459
; BTVER2-NEXT: vpcmpestri $7, %xmm1, %xmm0 # sched: [14:10.00]
460-
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.17]
461-
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.17]
462-
; BTVER2-NEXT: movl %ecx, %esi # sched: [1:0.17]
460+
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.50]
461+
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.50]
462+
; BTVER2-NEXT: movl %ecx, %esi # sched: [1:0.50]
463463
; BTVER2-NEXT: vpcmpestri $7, (%rdi), %xmm0 # sched: [19:10.00]
464464
; BTVER2-NEXT: # kill: def %ecx killed %ecx def %rcx
465465
; BTVER2-NEXT: leal (%rcx,%rsi), %eax # sched: [1:0.50]
@@ -558,11 +558,11 @@ define <16 x i8> @test_pcmpestrm(<16 x i8> %a0, <16 x i8> %a1, <16 x i8> *%a2) {
558558
;
559559
; BTVER2-LABEL: test_pcmpestrm:
560560
; BTVER2: # %bb.0:
561-
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.17]
562-
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.17]
561+
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.50]
562+
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.50]
563563
; BTVER2-NEXT: vpcmpestrm $7, %xmm1, %xmm0 # sched: [14:10.00]
564-
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.17]
565-
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.17]
564+
; BTVER2-NEXT: movl $7, %eax # sched: [1:0.50]
565+
; BTVER2-NEXT: movl $7, %edx # sched: [1:0.50]
566566
; BTVER2-NEXT: vpcmpestrm $7, (%rdi), %xmm0 # sched: [19:10.00]
567567
; BTVER2-NEXT: retq # sched: [4:1.00]
568568
;
@@ -649,7 +649,7 @@ define i32 @test_pcmpistri(<16 x i8> %a0, <16 x i8> %a1, <16 x i8> *%a2) {
649649
; BTVER2-LABEL: test_pcmpistri:
650650
; BTVER2: # %bb.0:
651651
; BTVER2-NEXT: vpcmpistri $7, %xmm1, %xmm0 # sched: [7:2.00]
652-
; BTVER2-NEXT: movl %ecx, %eax # sched: [1:0.17]
652+
; BTVER2-NEXT: movl %ecx, %eax # sched: [1:0.50]
653653
; BTVER2-NEXT: vpcmpistri $7, (%rdi), %xmm0 # sched: [12:2.00]
654654
; BTVER2-NEXT: # kill: def %ecx killed %ecx def %rcx
655655
; BTVER2-NEXT: leal (%rcx,%rax), %eax # sched: [1:0.50]

‎llvm/test/CodeGen/X86/x87-schedule.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4255,8 +4255,8 @@ define void @test_fxch() optsize {
42554255
; BTVER2-LABEL: test_fxch:
42564256
; BTVER2: # %bb.0:
42574257
; BTVER2-NEXT: #APP
4258-
; BTVER2-NEXT: fxch %st(1) # sched: [1:0.17]
4259-
; BTVER2-NEXT: fxch %st(3) # sched: [1:0.17]
4258+
; BTVER2-NEXT: fxch %st(1) # sched: [1:0.50]
4259+
; BTVER2-NEXT: fxch %st(3) # sched: [1:0.50]
42604260
; BTVER2-NEXT: #NO_APP
42614261
; BTVER2-NEXT: retl # sched: [4:1.00]
42624262
;

0 commit comments

Comments
 (0)
Please sign in to comment.