Skip to content
This repository was archived by the owner on Mar 28, 2020. It is now read-only.

Commit a5ac3f9

Browse files
committed
[X86][BtVer2] Flag AVX2+ scheduler classes as unsupported
Jaguar only supports up to AVX1 Differential Revision: https://reviews.llvm.org/D48274 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334947 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent 0f51d6d commit a5ac3f9

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

lib/Target/X86/X86ScheduleBtVer2.td

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -450,44 +450,47 @@ defm : X86WriteRes<WriteVecMoveFromGpr, [JFPU01, JFPX], 8, [1, 1], 2>;
450450

451451
defm : JWriteResFpuPair<WriteVecALU, [JFPU01, JVALU], 1>;
452452
defm : JWriteResFpuPair<WriteVecALUX, [JFPU01, JVALU], 1>;
453-
defm : JWriteResFpuPair<WriteVecALUY, [JFPU01, JVALU], 1>;
453+
defm : X86WriteResPairUnsupported<WriteVecALUY>;
454454
defm : X86WriteResPairUnsupported<WriteVecALUZ>;
455455
defm : JWriteResFpuPair<WriteVecShift, [JFPU01, JVALU], 1>;
456456
defm : JWriteResFpuPair<WriteVecShiftX, [JFPU01, JVALU], 1>;
457-
defm : JWriteResFpuPair<WriteVecShiftY, [JFPU01, JVALU], 1>;
457+
defm : X86WriteResPairUnsupported<WriteVecShiftY>;
458458
defm : X86WriteResPairUnsupported<WriteVecShiftZ>;
459459
defm : JWriteResFpuPair<WriteVecShiftImm, [JFPU01, JVALU], 1>;
460460
defm : JWriteResFpuPair<WriteVecShiftImmX,[JFPU01, JVALU], 1>;
461-
defm : JWriteResFpuPair<WriteVecShiftImmY,[JFPU01, JVALU], 1>;
461+
defm : X86WriteResPairUnsupported<WriteVecShiftImmY>;
462462
defm : X86WriteResPairUnsupported<WriteVecShiftImmZ>;
463+
defm : X86WriteResPairUnsupported<WriteVarVecShift>;
464+
defm : X86WriteResPairUnsupported<WriteVarVecShiftY>;
465+
defm : X86WriteResPairUnsupported<WriteVarVecShiftZ>;
463466
defm : JWriteResFpuPair<WriteVecIMul, [JFPU0, JVIMUL], 2>;
464467
defm : JWriteResFpuPair<WriteVecIMulX, [JFPU0, JVIMUL], 2>;
465-
defm : JWriteResFpuPair<WriteVecIMulY, [JFPU0, JVIMUL], 2>;
468+
defm : X86WriteResPairUnsupported<WriteVecIMulY>;
466469
defm : X86WriteResPairUnsupported<WriteVecIMulZ>;
467470
defm : JWriteResFpuPair<WritePMULLD, [JFPU0, JFPU01, JVIMUL, JVALU], 4, [2, 1, 2, 1], 3>;
468-
defm : JWriteResFpuPair<WritePMULLDY, [JFPU0, JFPU01, JVIMUL, JVALU], 4, [2, 1, 2, 1], 3>;
471+
defm : X86WriteResPairUnsupported<WritePMULLDY>;
469472
defm : X86WriteResPairUnsupported<WritePMULLDZ>;
470473
defm : JWriteResFpuPair<WriteMPSAD, [JFPU0, JVIMUL], 3, [1, 2]>;
471-
defm : JWriteResFpuPair<WriteMPSADY, [JFPU0, JVIMUL], 3, [1, 2]>;
474+
defm : X86WriteResPairUnsupported<WriteMPSADY>;
472475
defm : X86WriteResPairUnsupported<WriteMPSADZ>;
473476
defm : JWriteResFpuPair<WritePSADBW, [JFPU01, JVALU], 2>;
474477
defm : JWriteResFpuPair<WritePSADBWX, [JFPU01, JVALU], 2>;
475-
defm : JWriteResFpuPair<WritePSADBWY, [JFPU01, JVALU], 2>;
478+
defm : X86WriteResPairUnsupported<WritePSADBWY>;
476479
defm : X86WriteResPairUnsupported<WritePSADBWZ>;
477480
defm : JWriteResFpuPair<WritePHMINPOS, [JFPU0, JVALU], 2>;
478481
defm : JWriteResFpuPair<WriteShuffle, [JFPU01, JVALU], 1>;
479482
defm : JWriteResFpuPair<WriteShuffleX, [JFPU01, JVALU], 1>;
480-
defm : JWriteResFpuPair<WriteShuffleY, [JFPU01, JVALU], 1>;
483+
defm : X86WriteResPairUnsupported<WriteShuffleY>;
481484
defm : X86WriteResPairUnsupported<WriteShuffleZ>;
482485
defm : JWriteResFpuPair<WriteVarShuffle, [JFPU01, JVALU], 2, [1, 4], 3>;
483486
defm : JWriteResFpuPair<WriteVarShuffleX, [JFPU01, JVALU], 2, [1, 4], 3>;
484-
defm : JWriteResFpuPair<WriteVarShuffleY, [JFPU01, JVALU], 2, [1, 4], 3>;
487+
defm : X86WriteResPairUnsupported<WriteVarShuffleY>;
485488
defm : X86WriteResPairUnsupported<WriteVarShuffleZ>;
486489
defm : JWriteResFpuPair<WriteBlend, [JFPU01, JVALU], 1>;
487-
defm : JWriteResFpuPair<WriteBlendY, [JFPU01, JVALU], 1>;
490+
defm : X86WriteResPairUnsupported<WriteBlendY>;
488491
defm : X86WriteResPairUnsupported<WriteBlendZ>;
489492
defm : JWriteResFpuPair<WriteVarBlend, [JFPU01, JVALU], 2, [1, 4], 3>;
490-
defm : JWriteResFpuPair<WriteVarBlendY, [JFPU01, JVALU], 2, [1, 4], 3>;
493+
defm : X86WriteResPairUnsupported<WriteVarBlendY>;
491494
defm : X86WriteResPairUnsupported<WriteVarBlendZ>;
492495
defm : JWriteResFpuPair<WriteVecLogic, [JFPU01, JVALU], 1>;
493496
defm : JWriteResFpuPair<WriteVecLogicX, [JFPU01, JVALU], 1>;
@@ -496,11 +499,8 @@ defm : X86WriteResPairUnsupported<WriteVecLogicZ>;
496499
defm : JWriteResFpuPair<WriteVecTest, [JFPU0, JFPA, JALU0], 3>;
497500
defm : JWriteResYMMPair<WriteVecTestY, [JFPU01, JFPX, JFPA, JALU0], 4, [2, 2, 2, 1], 3>;
498501
defm : X86WriteResPairUnsupported<WriteVecTestZ>;
499-
defm : JWriteResFpuPair<WriteShuffle256, [JFPU01, JVALU], 1>;
502+
defm : X86WriteResPairUnsupported<WriteShuffle256>;
500503
defm : X86WriteResPairUnsupported<WriteVarShuffle256>;
501-
defm : X86WriteResPairUnsupported<WriteVarVecShift>;
502-
defm : X86WriteResPairUnsupported<WriteVarVecShiftY>;
503-
defm : X86WriteResPairUnsupported<WriteVarVecShiftZ>;
504504

505505
////////////////////////////////////////////////////////////////////////////////
506506
// Vector insert/extract operations.
@@ -524,10 +524,10 @@ defm : JWriteResFpuPair<WritePCmpEStrM, [JFPU1, JSAGU, JLAGU, JVALU, JVALU1, JFP
524524
// MOVMSK Instructions.
525525
////////////////////////////////////////////////////////////////////////////////
526526

527-
def : WriteRes<WriteFMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
528-
def : WriteRes<WriteVecMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
529-
def : WriteRes<WriteVecMOVMSKY, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
530-
def : WriteRes<WriteMMXMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
527+
def : WriteRes<WriteFMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
528+
def : WriteRes<WriteVecMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
529+
defm : X86WriteResUnsupported<WriteVecMOVMSKY>;
530+
def : WriteRes<WriteMMXMOVMSK, [JFPU0, JFPA, JALU0]> { let Latency = 3; }
531531

532532
////////////////////////////////////////////////////////////////////////////////
533533
// AES Instructions.
@@ -545,7 +545,7 @@ defm : JWriteResFpuPair<WriteFHAdd, [JFPU0, JFPA], 3>;
545545
defm : JWriteResYMMPair<WriteFHAddY, [JFPU0, JFPA], 3, [2,2], 2>;
546546
defm : JWriteResFpuPair<WritePHAdd, [JFPU01, JVALU], 1>;
547547
defm : JWriteResFpuPair<WritePHAddX, [JFPU01, JVALU], 1>;
548-
defm : JWriteResFpuPair<WritePHAddY, [JFPU01, JVALU], 1>;
548+
defm : X86WriteResPairUnsupported<WritePHAddY>;
549549

550550
////////////////////////////////////////////////////////////////////////////////
551551
// Carry-less multiplication instructions.

0 commit comments

Comments
 (0)