diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86SchedSkylakeServer.td')
| -rwxr-xr-x | llvm/lib/Target/X86/X86SchedSkylakeServer.td | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td index f671650c843..02a537363ca 100755 --- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td @@ -142,8 +142,10 @@ def : WriteRes<WriteLAHFSAHF, [SKXPort06]>; def : WriteRes<WriteBitTest, [SKXPort06]>; // // Integer shifts and rotates. -defm : SKXWriteResPair<WriteShift, [SKXPort06], 1>; -defm : SKXWriteResPair<WriteRotate, [SKXPort06], 2, [2], 2>; +defm : SKXWriteResPair<WriteShift, [SKXPort06], 1>; +defm : SKXWriteResPair<WriteShiftCL, [SKXPort06], 3, [3], 3>; +defm : SKXWriteResPair<WriteRotate, [SKXPort06], 2, [2], 2>; +defm : SKXWriteResPair<WriteRotateCL, [SKXPort06], 3, [3], 3>; // SHLD/SHRD. defm : X86WriteRes<WriteSHDrri, [SKXPort1], 3, [1], 1>; @@ -822,17 +824,6 @@ def SKXWriteResGroup34 : SchedWriteRes<[SKXPort0,SKXPort0156]> { } def: InstRW<[SKXWriteResGroup34], (instrs FNSTSW16r)>; -def SKXWriteResGroup35 : SchedWriteRes<[SKXPort06]> { - let Latency = 3; - let NumMicroOps = 3; - let ResourceCycles = [3]; -} -def: InstRW<[SKXWriteResGroup35], (instregex "ROL(8|16|32|64)rCL", - "ROR(8|16|32|64)rCL", - "SAR(8|16|32|64)rCL", - "SHL(8|16|32|64)rCL", - "SHR(8|16|32|64)rCL")>; - def SKXWriteResGroup37 : SchedWriteRes<[SKXPort0,SKXPort5]> { let Latency = 3; let NumMicroOps = 3; |

