[llvm] r330508 - [X86] Strip unnecessary WriteFShuffle instruction instrw overrides from scheduler models.
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Sat Apr 21 07:56:57 PDT 2018
Author: rksimon
Date: Sat Apr 21 07:56:56 2018
New Revision: 330508
URL: http://llvm.org/viewvc/llvm-project?rev=330508&view=rev
Log:
[X86] Strip unnecessary WriteFShuffle instruction instrw overrides from scheduler models.
Modified:
llvm/trunk/lib/Target/X86/X86SchedBroadwell.td
llvm/trunk/lib/Target/X86/X86SchedHaswell.td
llvm/trunk/lib/Target/X86/X86SchedSkylakeClient.td
llvm/trunk/lib/Target/X86/X86SchedSkylakeServer.td
Modified: llvm/trunk/lib/Target/X86/X86SchedBroadwell.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86SchedBroadwell.td?rev=330508&r1=330507&r2=330508&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86SchedBroadwell.td (original)
+++ llvm/trunk/lib/Target/X86/X86SchedBroadwell.td Sat Apr 21 07:56:56 2018
@@ -356,18 +356,10 @@ def: InstRW<[BWWriteResGroup3], (instreg
"MMX_MOVD64to64rr",
"MMX_MOVQ2DQrr",
"VBROADCASTSSrr",
- "(V?)INSERTPSrr",
"(V?)MOV64toPQIrr",
"(V?)MOVAPD(Y?)rr",
"(V?)MOVAPS(Y?)rr",
- "(V?)MOVDDUP(Y?)rr",
"(V?)MOVDI2PDIrr",
- "(V?)MOVHLPSrr",
- "(V?)MOVLHPSrr",
- "(V?)MOVSDrr",
- "(V?)MOVSHDUP(Y?)rr",
- "(V?)MOVSLDUP(Y?)rr",
- "(V?)MOVSSrr",
"(V?)MOVUPD(Y?)rr",
"(V?)MOVUPS(Y?)rr",
"(V?)ORPD(Y?)rr",
@@ -376,8 +368,6 @@ def: InstRW<[BWWriteResGroup3], (instreg
"(V?)PBLENDW(Y?)rri",
"VPBROADCASTDrr",
"VPBROADCASTQrr",
- "VPERMILPD(Y?)ri",
- "VPERMILPS(Y?)ri",
"(V?)PMOVSXBDrr",
"(V?)PMOVSXBQrr",
"(V?)PMOVSXBWrr",
@@ -402,13 +392,7 @@ def: InstRW<[BWWriteResGroup3], (instreg
"(V?)PUNPCKLBW(Y?)rr",
"(V?)PUNPCKLDQ(Y?)rr",
"(V?)PUNPCKLQDQ(Y?)rr",
- "(V?)PUNPCKLWD(Y?)rr",
- "(V?)SHUFPD(Y?)rri",
- "(V?)SHUFPS(Y?)rri",
- "(V?)UNPCKHPD(Y?)rr",
- "(V?)UNPCKHPS(Y?)rr",
- "(V?)UNPCKLPD(Y?)rr",
- "(V?)UNPCKLPS(Y?)rr")>;
+ "(V?)PUNPCKLWD(Y?)rr")>;
def BWWriteResGroup4 : SchedWriteRes<[BWPort6]> {
let Latency = 1;
@@ -508,8 +492,6 @@ def BWWriteResGroup8 : SchedWriteRes<[BW
let ResourceCycles = [1];
}
def: InstRW<[BWWriteResGroup8], (instregex "MMX_MOVQ64rr",
- "(V?)BLENDPD(Y?)rri",
- "(V?)BLENDPS(Y?)rri",
"(V?)MOVDQA(Y?)rr",
"(V?)MOVDQU(Y?)rr",
"(V?)MOVPQI2QIrr",
Modified: llvm/trunk/lib/Target/X86/X86SchedHaswell.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86SchedHaswell.td?rev=330508&r1=330507&r2=330508&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86SchedHaswell.td (original)
+++ llvm/trunk/lib/Target/X86/X86SchedHaswell.td Sat Apr 21 07:56:56 2018
@@ -707,18 +707,10 @@ def: InstRW<[HWWriteResGroup4], (instreg
"MMX_MOVD64to64rr",
"MMX_MOVQ2DQrr",
"VBROADCASTSSrr",
- "(V?)INSERTPSrr",
"(V?)MOV64toPQIrr",
"(V?)MOVAPD(Y?)rr",
"(V?)MOVAPS(Y?)rr",
- "(V?)MOVDDUP(Y?)rr",
"(V?)MOVDI2PDIrr",
- "(V?)MOVHLPSrr",
- "(V?)MOVLHPSrr",
- "(V?)MOVSDrr",
- "(V?)MOVSHDUP(Y?)rr",
- "(V?)MOVSLDUP(Y?)rr",
- "(V?)MOVSSrr",
"(V?)MOVUPD(Y?)rr",
"(V?)MOVUPS(Y?)rr",
"(V?)PACKSSDW(Y?)rr",
@@ -729,8 +721,6 @@ def: InstRW<[HWWriteResGroup4], (instreg
"(V?)PBLENDW(Y?)rri",
"VPBROADCASTDrr",
"VPBROADCASTQrr",
- "VPERMILPD(Y?)ri",
- "VPERMILPS(Y?)ri",
"(V?)PMOVSXBDrr",
"(V?)PMOVSXBQrr",
"(V?)PMOVSXBWrr",
@@ -755,13 +745,7 @@ def: InstRW<[HWWriteResGroup4], (instreg
"(V?)PUNPCKLBW(Y?)rr",
"(V?)PUNPCKLDQ(Y?)rr",
"(V?)PUNPCKLQDQ(Y?)rr",
- "(V?)PUNPCKLWD(Y?)rr",
- "(V?)SHUFPD(Y?)rri",
- "(V?)SHUFPS(Y?)rri",
- "(V?)UNPCKHPD(Y?)rr",
- "(V?)UNPCKHPS(Y?)rr",
- "(V?)UNPCKLPD(Y?)rr",
- "(V?)UNPCKLPS(Y?)rr")>;
+ "(V?)PUNPCKLWD(Y?)rr")>;
def HWWriteResGroup5 : SchedWriteRes<[HWPort6]> {
let Latency = 1;
@@ -863,8 +847,6 @@ def HWWriteResGroup9 : SchedWriteRes<[HW
let ResourceCycles = [1];
}
def: InstRW<[HWWriteResGroup9], (instregex "MMX_MOVQ64rr",
- "(V?)BLENDPD(Y?)rri",
- "(V?)BLENDPS(Y?)rri",
"(V?)MOVDQA(Y?)rr",
"(V?)MOVDQU(Y?)rr",
"(V?)MOVPQI2QIrr",
Modified: llvm/trunk/lib/Target/X86/X86SchedSkylakeClient.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86SchedSkylakeClient.td?rev=330508&r1=330507&r2=330508&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86SchedSkylakeClient.td (original)
+++ llvm/trunk/lib/Target/X86/X86SchedSkylakeClient.td Sat Apr 21 07:56:56 2018
@@ -359,16 +359,8 @@ def: InstRW<[SKLWriteResGroup3], (instre
"UCOM_FPr",
"UCOM_Fr",
"VBROADCASTSSrr",
- "(V?)INSERTPSrr",
"(V?)MOV64toPQIrr",
- "(V?)MOVDDUP(Y?)rr",
"(V?)MOVDI2PDIrr",
- "(V?)MOVHLPSrr",
- "(V?)MOVLHPSrr",
- "(V?)MOVSDrr",
- "(V?)MOVSHDUP(Y?)rr",
- "(V?)MOVSLDUP(Y?)rr",
- "(V?)MOVSSrr",
"(V?)PACKSSDW(Y?)rr",
"(V?)PACKSSWB(Y?)rr",
"(V?)PACKUSDW(Y?)rr",
@@ -377,8 +369,6 @@ def: InstRW<[SKLWriteResGroup3], (instre
"(V?)PBLENDW(Y?)rri",
"VPBROADCASTDrr",
"VPBROADCASTQrr",
- "VPERMILPD(Y?)ri",
- "VPERMILPS(Y?)ri",
"(V?)PMOVSXBDrr",
"(V?)PMOVSXBQrr",
"(V?)PMOVSXBWrr",
@@ -403,13 +393,7 @@ def: InstRW<[SKLWriteResGroup3], (instre
"(V?)PUNPCKLBW(Y?)rr",
"(V?)PUNPCKLDQ(Y?)rr",
"(V?)PUNPCKLQDQ(Y?)rr",
- "(V?)PUNPCKLWD(Y?)rr",
- "(V?)SHUFPD(Y?)rri",
- "(V?)SHUFPS(Y?)rri",
- "(V?)UNPCKHPD(Y?)rr",
- "(V?)UNPCKHPS(Y?)rr",
- "(V?)UNPCKLPD(Y?)rr",
- "(V?)UNPCKLPS(Y?)rr")>;
+ "(V?)PUNPCKLWD(Y?)rr")>;
def SKLWriteResGroup4 : SchedWriteRes<[SKLPort6]> {
let Latency = 1;
@@ -540,9 +524,7 @@ def SKLWriteResGroup9 : SchedWriteRes<[S
let NumMicroOps = 1;
let ResourceCycles = [1];
}
-def: InstRW<[SKLWriteResGroup9], (instregex "(V?)BLENDPD(Y?)rri",
- "(V?)BLENDPS(Y?)rri",
- "(V?)MOVAPD(Y?)rr",
+def: InstRW<[SKLWriteResGroup9], (instregex "(V?)MOVAPD(Y?)rr",
"(V?)MOVAPS(Y?)rr",
"(V?)MOVDQA(Y?)rr",
"(V?)MOVDQU(Y?)rr",
Modified: llvm/trunk/lib/Target/X86/X86SchedSkylakeServer.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86SchedSkylakeServer.td?rev=330508&r1=330507&r2=330508&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86SchedSkylakeServer.td (original)
+++ llvm/trunk/lib/Target/X86/X86SchedSkylakeServer.td Sat Apr 21 07:56:56 2018
@@ -401,14 +401,7 @@ def: InstRW<[SKXWriteResGroup3], (instre
"MMX_MOVD64rr",
"MMX_MOVD64to64rr",
"MOV64toPQIrr",
- "MOVDDUPrr",
"MOVDI2PDIrr",
- "MOVHLPSrr",
- "MOVLHPSrr",
- "MOVSDrr",
- "MOVSHDUPrr",
- "MOVSLDUPrr",
- "MOVSSrr",
"PACKSSDWrr",
"PACKSSWBrr",
"PACKUSDWrr",
@@ -440,44 +433,14 @@ def: InstRW<[SKXWriteResGroup3], (instre
"PUNPCKLDQrr",
"PUNPCKLQDQrr",
"PUNPCKLWDrr",
- "SHUFPDrri",
- "SHUFPSrri",
"UCOM_FPr",
"UCOM_Fr",
- "UNPCKHPDrr",
- "UNPCKHPSrr",
- "UNPCKLPDrr",
- "UNPCKLPSrr",
"VBROADCASTI32X2Z128r",
"VBROADCASTSSrr",
- "(V?)INSERTPS(Z?)rr",
"VMOV64toPQIZrr",
"VMOV64toPQIrr",
- "VMOVDDUPYrr",
- "VMOVDDUPZ128rr",
- "VMOVDDUPZ256rr",
- "VMOVDDUPZrr",
- "VMOVDDUPrr",
"VMOVDI2PDIZrr",
"VMOVDI2PDIrr",
- "VMOVHLPSZrr",
- "VMOVHLPSrr",
- "VMOVLHPSZrr",
- "VMOVLHPSrr",
- "VMOVSDZrr",
- "VMOVSDrr",
- "VMOVSHDUPYrr",
- "VMOVSHDUPZ128rr",
- "VMOVSHDUPZ256rr",
- "VMOVSHDUPZrr",
- "VMOVSHDUPrr",
- "VMOVSLDUPYrr",
- "VMOVSLDUPZ128rr",
- "VMOVSLDUPZ256rr",
- "VMOVSLDUPZrr",
- "VMOVSLDUPrr",
- "VMOVSSZrr",
- "VMOVSSrr",
"VPACKSSDWYrr",
"VPACKSSDWZ128rr",
"VPACKSSDWZ256rr",
@@ -507,16 +470,6 @@ def: InstRW<[SKXWriteResGroup3], (instre
"VPBLENDWrri",
"VPBROADCASTDrr",
"VPBROADCASTQrr",
- "VPERMILPDYri",
- "VPERMILPDZ128ri",
- "VPERMILPDZ256ri",
- "VPERMILPDZri",
- "VPERMILPDri",
- "VPERMILPSYri",
- "VPERMILPSZ128ri",
- "VPERMILPSZ256ri",
- "VPERMILPSZri",
- "VPERMILPSri",
"VPMOVSXBDrr",
"VPMOVSXBQrr",
"VPMOVSXBWrr",
@@ -593,37 +546,7 @@ def: InstRW<[SKXWriteResGroup3], (instre
"VPUNPCKLWDZ128rr",
"VPUNPCKLWDZ256rr",
"VPUNPCKLWDZrr",
- "VPUNPCKLWDrr",
- "VSHUFPDYrri",
- "VSHUFPDZ128rri",
- "VSHUFPDZ256rri",
- "VSHUFPDZrri",
- "VSHUFPDrri",
- "VSHUFPSYrri",
- "VSHUFPSZ128rri",
- "VSHUFPSZ256rri",
- "VSHUFPSZrri",
- "VSHUFPSrri",
- "VUNPCKHPDYrr",
- "VUNPCKHPDZ128rr",
- "VUNPCKHPDZ256rr",
- "VUNPCKHPDZrr",
- "VUNPCKHPDrr",
- "VUNPCKHPSYrr",
- "VUNPCKHPSZ128rr",
- "VUNPCKHPSZ256rr",
- "VUNPCKHPSZrr",
- "VUNPCKHPSrr",
- "VUNPCKLPDYrr",
- "VUNPCKLPDZ128rr",
- "VUNPCKLPDZ256rr",
- "VUNPCKLPDZrr",
- "VUNPCKLPDrr",
- "VUNPCKLPSYrr",
- "VUNPCKLPSZ128rr",
- "VUNPCKLPSZ256rr",
- "VUNPCKLPSZrr",
- "VUNPCKLPSrr")>;
+ "VPUNPCKLWDrr")>;
def SKXWriteResGroup4 : SchedWriteRes<[SKXPort6]> {
let Latency = 1;
@@ -1001,9 +924,7 @@ def SKXWriteResGroup9 : SchedWriteRes<[S
let NumMicroOps = 1;
let ResourceCycles = [1];
}
-def: InstRW<[SKXWriteResGroup9], (instregex "BLENDPDrri",
- "BLENDPSrri",
- "MOVAPDrr",
+def: InstRW<[SKXWriteResGroup9], (instregex "MOVAPDrr",
"MOVAPSrr",
"MOVDQArr",
"MOVDQUrr",
@@ -1024,10 +945,6 @@ def: InstRW<[SKXWriteResGroup9], (instre
"VBLENDMPSZ128rr",
"VBLENDMPSZ256rr",
"VBLENDMPSZrr",
- "VBLENDPDYrri",
- "VBLENDPDrri",
- "VBLENDPSYrri",
- "VBLENDPSrri",
"VMOVAPDYrr",
"VMOVAPDZ128rr",
"VMOVAPDZ256rr",
More information about the llvm-commits
mailing list