diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86SchedSandyBridge.td')
| -rw-r--r-- | llvm/lib/Target/X86/X86SchedSandyBridge.td | 26 |
1 files changed, 2 insertions, 24 deletions
diff --git a/llvm/lib/Target/X86/X86SchedSandyBridge.td b/llvm/lib/Target/X86/X86SchedSandyBridge.td index aefbfb64cf8..c95771b4c2c 100644 --- a/llvm/lib/Target/X86/X86SchedSandyBridge.td +++ b/llvm/lib/Target/X86/X86SchedSandyBridge.td @@ -139,6 +139,8 @@ def : WriteRes<WriteFLoad, [SBPort23]> { let Latency = 6; } def : WriteRes<WriteFMove, [SBPort5]>; defm : SBWriteResPair<WriteFAdd, [SBPort1], 3>; +defm : SBWriteResPair<WriteFCmp, [SBPort1], 3, [1], 1, 6>; +defm : SBWriteResPair<WriteFCom, [SBPort1], 3>; defm : SBWriteResPair<WriteFMul, [SBPort0], 5>; defm : SBWriteResPair<WriteFDiv, [SBPort0], 24>; defm : SBWriteResPair<WriteFRcp, [SBPort0], 5>; @@ -685,21 +687,9 @@ def: InstRW<[SBWriteResGroup21], (instregex "ADD_FPrST0", "(V?)ADDSSrr", "(V?)ADDSUBPD(Y?)rr", "(V?)ADDSUBPS(Y?)rr", - "(V?)CMPPD(Y?)rri", - "(V?)CMPPS(Y?)rri", - "(V?)CMPSDrr", - "(V?)CMPSSrr", "(V?)CVTDQ2PS(Y?)rr", "(V?)CVTPS2DQ(Y?)rr", "(V?)CVTTPS2DQ(Y?)rr", - "(V?)MAX(C?)PD(Y?)rr", - "(V?)MAX(C?)PS(Y?)rr", - "(V?)MAX(C?)SDrr", - "(V?)MAX(C?)SSrr", - "(V?)MIN(C?)PD(Y?)rr", - "(V?)MIN(C?)PS(Y?)rr", - "(V?)MIN(C?)SDrr", - "(V?)MIN(C?)SSrr", "(V?)ROUNDPD(Y?)r", "(V?)ROUNDPS(Y?)r", "(V?)ROUNDSDr", @@ -1562,23 +1552,11 @@ def: InstRW<[SBWriteResGroup90], (instregex "MMX_CVTPI2PSirm", "(V?)ADDSSrm", "(V?)ADDSUBPDrm", "(V?)ADDSUBPSrm", - "(V?)CMPPDrmi", - "(V?)CMPPSrmi", - "(V?)CMPSDrm", - "(V?)CMPSSrm", "(V?)CVTDQ2PSrm", "(V?)CVTPS2DQrm", "(V?)CVTSI642SDrm", "(V?)CVTSI2SDrm", "(V?)CVTTPS2DQrm", - "(V?)MAX(C?)PDrm", - "(V?)MAX(C?)PSrm", - "(V?)MAX(C?)SDrm", - "(V?)MAX(C?)SSrm", - "(V?)MIN(C?)PDrm", - "(V?)MIN(C?)PSrm", - "(V?)MIN(C?)SDrm", - "(V?)MIN(C?)SSrm", "(V?)ROUNDPDm", "(V?)ROUNDPSm", "(V?)ROUNDSDm", |

