diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86ScheduleBtVer2.td')
-rw-r--r-- | llvm/lib/Target/X86/X86ScheduleBtVer2.td | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/llvm/lib/Target/X86/X86ScheduleBtVer2.td b/llvm/lib/Target/X86/X86ScheduleBtVer2.td index 5edc060f112..a1b6358af38 100644 --- a/llvm/lib/Target/X86/X86ScheduleBtVer2.td +++ b/llvm/lib/Target/X86/X86ScheduleBtVer2.td @@ -325,9 +325,12 @@ defm : JWriteResFpuPair<WriteFMA, [JFPU1, JFPM], 2>; // NOTE: Doesn't defm : JWriteResFpuPair<WriteFMAS, [JFPU1, JFPM], 2>; // NOTE: Doesn't exist on Jaguar. defm : JWriteResFpuPair<WriteFMAY, [JFPU1, JFPM], 2>; // NOTE: Doesn't exist on Jaguar. defm : JWriteResFpuPair<WriteFRcp, [JFPU1, JFPM], 2>; +defm : JWriteResYMMPair<WriteFRcpY, [JFPU1, JFPM], 2, [2,2], 2>; defm : JWriteResFpuPair<WriteFRsqrt, [JFPU1, JFPM], 2>; +defm : JWriteResYMMPair<WriteFRsqrtY, [JFPU1, JFPM], 2, [2,2], 2>; defm : JWriteResFpuPair<WriteFDiv, [JFPU1, JFPM], 19, [1, 19]>; defm : JWriteResFpuPair<WriteFSqrt, [JFPU1, JFPM], 21, [1, 21]>; +defm : JWriteResYMMPair<WriteFSqrtY, [JFPU1, JFPM], 42, [2, 42], 2>; defm : JWriteResFpuPair<WriteFSign, [JFPU1, JFPM], 2>; defm : JWriteResFpuPair<WriteFLogic, [JFPU01, JFPX], 1>; defm : JWriteResYMMPair<WriteFLogicY, [JFPU01, JFPX], 1, [2, 2], 2>; @@ -587,14 +590,14 @@ def JWriteVMULYPS: SchedWriteRes<[JFPU1, JFPM]> { let ResourceCycles = [2, 2]; let NumMicroOps = 2; } -def : InstRW<[JWriteVMULYPS], (instrs VMULPSYrr, VRCPPSYr, VRSQRTPSYr)>; +def : InstRW<[JWriteVMULYPS], (instrs VMULPSYrr)>; def JWriteVMULYPSLd: SchedWriteRes<[JLAGU, JFPU1, JFPM]> { let Latency = 7; let ResourceCycles = [2, 2, 2]; let NumMicroOps = 2; } -def : InstRW<[JWriteVMULYPSLd, ReadAfterLd], (instrs VMULPSYrm, VRCPPSYm, VRSQRTPSYm)>; +def : InstRW<[JWriteVMULYPSLd, ReadAfterLd], (instrs VMULPSYrm)>; def JWriteVMULPD: SchedWriteRes<[JFPU1, JFPM]> { let Latency = 4; @@ -744,20 +747,6 @@ def JWriteVSQRTYPDLd: SchedWriteRes<[JLAGU, JFPU1, JFPM]> { } def : InstRW<[JWriteVSQRTYPDLd], (instrs VSQRTPDYm)>; -def JWriteVSQRTYPS: SchedWriteRes<[JFPU1, JFPM]> { - let Latency = 42; - let ResourceCycles = [2, 42]; - let NumMicroOps = 2; -} -def : InstRW<[JWriteVSQRTYPS], (instrs VSQRTPSYr)>; - -def JWriteVSQRTYPSLd: SchedWriteRes<[JLAGU, JFPU1, JFPM]> { - let Latency = 47; - let ResourceCycles = [2, 2, 42]; - let NumMicroOps = 2; -} -def : InstRW<[JWriteVSQRTYPSLd], (instrs VSQRTPSYm)>; - def JWriteJVZEROALL: SchedWriteRes<[]> { let Latency = 90; let NumMicroOps = 73; |