diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86ScheduleSLM.td | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86ScheduleSLM.td b/llvm/lib/Target/X86/X86ScheduleSLM.td index 84aac01ab38..dcd155ea0e0 100644 --- a/llvm/lib/Target/X86/X86ScheduleSLM.td +++ b/llvm/lib/Target/X86/X86ScheduleSLM.td @@ -511,4 +511,20 @@ defm : X86WriteResUnsupported<WriteCvtPS2PHSt>; defm : X86WriteResUnsupported<WriteCvtPS2PHYSt>; defm : X86WriteResUnsupported<WriteCvtPS2PHZSt>; +// Remaining SLM instrs. + +def SLMWriteResGroup1rr : SchedWriteRes<[SLM_FPC_RSV01]> { + let Latency = 4; + let NumMicroOps = 2; + let ResourceCycles = [4]; +} +def: InstRW<[SLMWriteResGroup1rr], (instrs PADDQrr, PSUBQrr, PCMPEQQrr)>; + +def SLMWriteResGroup1rm : SchedWriteRes<[SLM_MEC_RSV,SLM_FPC_RSV01]> { + let Latency = 7; + let NumMicroOps = 3; + let ResourceCycles = [1,4]; +} +def: InstRW<[SLMWriteResGroup1rm], (instrs PADDQrm, PSUBQrm, PCMPEQQrm)>; + } // SchedModel |

