From dfeebdbed7719a11bd672ebda74c7f37837ffa05 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Wed, 14 Mar 2018 21:55:54 +0000 Subject: [PATCH] [X86][Btver2] Add ResourceCycles and NumMicroOps overrides to scalar instructions. NFCI. Currently still use default values - this is setup for a future patch. llvm-svn: 327582 --- llvm/lib/Target/X86/X86ScheduleBtVer2.td | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/llvm/lib/Target/X86/X86ScheduleBtVer2.td b/llvm/lib/Target/X86/X86ScheduleBtVer2.td index 5048946..e8987b7 100644 --- a/llvm/lib/Target/X86/X86ScheduleBtVer2.td +++ b/llvm/lib/Target/X86/X86ScheduleBtVer2.td @@ -76,14 +76,20 @@ def : ReadAdvance; // folded loads. multiclass JWriteResIntPair { + int Lat, int Res = 1, int UOps = 1> { // Register variant is using a single cycle on ExePort. - def : WriteRes { let Latency = Lat; } + def : WriteRes { + let Latency = Lat; + let ResourceCycles = [Res]; + let NumMicroOps = UOps; + } // Memory variant also uses a cycle on JLAGU and adds 3 cycles to the // latency. def : WriteRes { let Latency = !add(Lat, 3); + let ResourceCycles = [1, Res]; + let NumMicroOps = UOps; } } -- 2.7.4