]> granicus.if.org Git - llvm/commitdiff
[X86] Add CMPSDrr/rm to the scheduler models.
authorCraig Topper <craig.topper@intel.com>
Sun, 10 Dec 2017 09:14:37 +0000 (09:14 +0000)
committerCraig Topper <craig.topper@intel.com>
Sun, 10 Dec 2017 09:14:37 +0000 (09:14 +0000)
Somehow CMPSSrr/rm was there and the VEX version was there, but this was consistently missing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320289 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86SchedBroadwell.td
lib/Target/X86/X86SchedHaswell.td
lib/Target/X86/X86SchedSandyBridge.td
lib/Target/X86/X86SchedSkylakeClient.td
lib/Target/X86/X86SchedSkylakeServer.td

index dafc71e4ec586fdba218978c0dc8cf1451e5bdb9..429afccbe92b0d5a2cd7e0ccea953e9166378302 100755 (executable)
@@ -1291,6 +1291,7 @@ def: InstRW<[BWWriteResGroup27], (instregex "BSF(16|32|64)rr")>;
 def: InstRW<[BWWriteResGroup27], (instregex "BSR(16|32|64)rr")>;
 def: InstRW<[BWWriteResGroup27], (instregex "CMPPDrri")>;
 def: InstRW<[BWWriteResGroup27], (instregex "CMPPSrri")>;
+def: InstRW<[BWWriteResGroup27], (instregex "CMPSDrr")>;
 def: InstRW<[BWWriteResGroup27], (instregex "CMPSSrr")>;
 def: InstRW<[BWWriteResGroup27], (instregex "COMISDrr")>;
 def: InstRW<[BWWriteResGroup27], (instregex "COMISSrr")>;
@@ -2769,6 +2770,7 @@ def: InstRW<[BWWriteResGroup91], (instregex "BSF(16|32|64)rm")>;
 def: InstRW<[BWWriteResGroup91], (instregex "BSR(16|32|64)rm")>;
 def: InstRW<[BWWriteResGroup91], (instregex "CMPPDrmi")>;
 def: InstRW<[BWWriteResGroup91], (instregex "CMPPSrmi")>;
+def: InstRW<[BWWriteResGroup91], (instregex "CMPSDrm")>;
 def: InstRW<[BWWriteResGroup91], (instregex "CMPSSrm")>;
 def: InstRW<[BWWriteResGroup91], (instregex "COMISDrm")>;
 def: InstRW<[BWWriteResGroup91], (instregex "COMISSrm")>;
index 35f0d99de7203c27985cbecebc6605f27a76fd45..b1221fc1498e05f898614d3a586703c24e068856 100644 (file)
@@ -1586,6 +1586,7 @@ def: InstRW<[HWWriteResGroup12], (instregex "ADDSDrm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "ADDSSrm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "BSF(16|32|64)rm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "BSR(16|32|64)rm")>;
+def: InstRW<[HWWriteResGroup12], (instregex "CMPSDrm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "CMPSSrm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "COMISDrm")>;
 def: InstRW<[HWWriteResGroup12], (instregex "COMISSrm")>;
@@ -2591,6 +2592,7 @@ def: InstRW<[HWWriteResGroup50], (instregex "BSF(16|32|64)rr")>;
 def: InstRW<[HWWriteResGroup50], (instregex "BSR(16|32|64)rr")>;
 def: InstRW<[HWWriteResGroup50], (instregex "CMPPDrri")>;
 def: InstRW<[HWWriteResGroup50], (instregex "CMPPSrri")>;
+def: InstRW<[HWWriteResGroup50], (instregex "CMPSDrr")>;
 def: InstRW<[HWWriteResGroup50], (instregex "CMPSSrr")>;
 def: InstRW<[HWWriteResGroup50], (instregex "COMISDrr")>;
 def: InstRW<[HWWriteResGroup50], (instregex "COMISSrr")>;
index 071b1c3fb67021c16919e37d1c1c165978f9c903..cacd5955c8fce8227004c958bd21fa27e1b77d76 100644 (file)
@@ -975,6 +975,7 @@ def: InstRW<[SBWriteResGroup21], (instregex "BSF(16|32|64)rr")>;
 def: InstRW<[SBWriteResGroup21], (instregex "BSR(16|32|64)rr")>;
 def: InstRW<[SBWriteResGroup21], (instregex "CMPPDrri")>;
 def: InstRW<[SBWriteResGroup21], (instregex "CMPPSrri")>;
+def: InstRW<[SBWriteResGroup21], (instregex "CMPSDrr")>;
 def: InstRW<[SBWriteResGroup21], (instregex "CMPSSrr")>;
 def: InstRW<[SBWriteResGroup21], (instregex "CRC32r(16|32|64)r8")>;
 def: InstRW<[SBWriteResGroup21], (instregex "CRC32r(16|32|64)r64")>;
@@ -2264,6 +2265,7 @@ def: InstRW<[SBWriteResGroup90], (instregex "ADDSUBPDrm")>;
 def: InstRW<[SBWriteResGroup90], (instregex "ADDSUBPSrm")>;
 def: InstRW<[SBWriteResGroup90], (instregex "CMPPDrmi")>;
 def: InstRW<[SBWriteResGroup90], (instregex "CMPPSrmi")>;
+def: InstRW<[SBWriteResGroup90], (instregex "CMPSDrm")>;
 def: InstRW<[SBWriteResGroup90], (instregex "CMPSSrm")>;
 def: InstRW<[SBWriteResGroup90], (instregex "CVTDQ2PSrm")>;
 def: InstRW<[SBWriteResGroup90], (instregex "CVTPS2DQrm")>;
index eee8209d67911b2d883029b12f7c469ec362477d..db6b605fa69d54e233f614aba7767038e49e1456 100644 (file)
@@ -1721,6 +1721,7 @@ def SKLWriteResGroup49 : SchedWriteRes<[SKLPort015]> {
 }
 def: InstRW<[SKLWriteResGroup49], (instregex "CMPPDrri")>;
 def: InstRW<[SKLWriteResGroup49], (instregex "CMPPSrri")>;
+def: InstRW<[SKLWriteResGroup49], (instregex "CMPSDrr")>;
 def: InstRW<[SKLWriteResGroup49], (instregex "CMPSSrr")>;
 def: InstRW<[SKLWriteResGroup49], (instregex "CVTDQ2PSrr")>;
 def: InstRW<[SKLWriteResGroup49], (instregex "CVTPS2DQrr")>;
@@ -3116,6 +3117,7 @@ def SKLWriteResGroup123 : SchedWriteRes<[SKLPort23,SKLPort015]> {
   let NumMicroOps = 2;
   let ResourceCycles = [1,1];
 }
+def: InstRW<[SKLWriteResGroup123], (instregex "CMPSDrm")>;
 def: InstRW<[SKLWriteResGroup123], (instregex "CMPSSrm")>;
 def: InstRW<[SKLWriteResGroup123], (instregex "CVTPS2PDrm")>;
 def: InstRW<[SKLWriteResGroup123], (instregex "MAX(C?)SDrm")>;
index f933770bfce39e9f76a20dd93d4e88887e1a244d..e6924122968151df71aad898cf98330acc845559 100755 (executable)
@@ -2405,6 +2405,7 @@ def: InstRW<[SKXWriteResGroup50], (instregex "ADDSUBPDrr")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "ADDSUBPSrr")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "CMPPDrri")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "CMPPSrri")>;
+def: InstRW<[SKXWriteResGroup50], (instregex "CMPSDrr")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "CMPSSrr")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "CVTDQ2PSrr")>;
 def: InstRW<[SKXWriteResGroup50], (instregex "CVTPS2DQrr")>;
@@ -5062,6 +5063,7 @@ def SKXWriteResGroup137 : SchedWriteRes<[SKXPort23,SKXPort015]> {
 }
 def: InstRW<[SKXWriteResGroup137], (instregex "ADDSDrm")>;
 def: InstRW<[SKXWriteResGroup137], (instregex "ADDSSrm")>;
+def: InstRW<[SKXWriteResGroup137], (instregex "CMPSDrm")>;
 def: InstRW<[SKXWriteResGroup137], (instregex "CMPSSrm")>;
 def: InstRW<[SKXWriteResGroup137], (instregex "CVTPS2PDrm")>;
 def: InstRW<[SKXWriteResGroup137], (instregex "MAX(C?)SDrm")>;