summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2018-03-26 16:24:13 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2018-03-26 16:24:13 +0000
commit8815105cd5e4da0890af76eb27a533ca741366f7 (patch)
tree47773e8037355322f26fed7d2cc2691d83862b9e /llvm/lib
parentf13bbf1d5891272583e803ebce798b3dbdacc353 (diff)
downloadbcm5719-llvm-8815105cd5e4da0890af76eb27a533ca741366f7.tar.gz
bcm5719-llvm-8815105cd5e4da0890af76eb27a533ca741366f7.zip
[X86][Btver2] Add CVTSD2SS/CVTSS2SD scheduler costs
llvm-svn: 328541
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86ScheduleBtVer2.td14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86ScheduleBtVer2.td b/llvm/lib/Target/X86/X86ScheduleBtVer2.td
index 75413aa9428..3acb7dc28f7 100644
--- a/llvm/lib/Target/X86/X86ScheduleBtVer2.td
+++ b/llvm/lib/Target/X86/X86ScheduleBtVer2.td
@@ -322,6 +322,20 @@ defm : JWriteResFpuPair<WriteCvtF2I, [JFPU1, JSTC], 3>; // Float -> Intege
defm : JWriteResFpuPair<WriteCvtI2F, [JFPU1, JSTC], 3>; // Integer -> Float.
defm : JWriteResFpuPair<WriteCvtF2F, [JFPU1, JSTC], 3>; // Float -> Float size conversion.
+def JWriteCVTF2F : SchedWriteRes<[JFPU1, JSTC]> {
+ let Latency = 7;
+ let ResourceCycles = [1, 2];
+ let NumMicroOps = 2;
+}
+def : InstRW<[JWriteCVTF2F], (instregex "(V)?CVTS(D|S)2S(D|S)rr")>;
+
+def JWriteCVTF2FLd : SchedWriteRes<[JLAGU, JFPU1, JSTC]> {
+ let Latency = 12;
+ let ResourceCycles = [1, 1, 2];
+ let NumMicroOps = 2;
+}
+def : InstRW<[JWriteCVTF2FLd], (instregex "(V)?CVTS(D|S)2S(D|S)rm")>;
+
def JWriteCVTSI2F : SchedWriteRes<[JFPU1, JSTC, JFPA, JALU0]> {
let Latency = 7;
let NumMicroOps = 2;
OpenPOWER on IntegriCloud