diff options
-rwxr-xr-x | llvm/lib/Target/X86/X86SchedBroadwell.td | 19 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86SchedHaswell.td | 19 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86SchedSkylakeClient.td | 17 | ||||
-rwxr-xr-x | llvm/lib/Target/X86/X86SchedSkylakeServer.td | 83 |
4 files changed, 5 insertions, 133 deletions
diff --git a/llvm/lib/Target/X86/X86SchedBroadwell.td b/llvm/lib/Target/X86/X86SchedBroadwell.td index e7f58c9f471..9c681098a82 100755 --- a/llvm/lib/Target/X86/X86SchedBroadwell.td +++ b/llvm/lib/Target/X86/X86SchedBroadwell.td @@ -351,7 +351,6 @@ def BWWriteResGroup3 : SchedWriteRes<[BWPort5]> { def: InstRW<[BWWriteResGroup3], (instregex "MMX_MOVD64rr", "MMX_MOVD64to64rr", "MMX_MOVQ2DQrr", - "VBROADCASTSSrr", "(V?)MOV64toPQIrr", "(V?)MOVAPD(Y?)rr", "(V?)MOVAPS(Y?)rr", @@ -359,8 +358,6 @@ def: InstRW<[BWWriteResGroup3], (instregex "MMX_MOVD64rr", "(V?)MOVUPD(Y?)rr", "(V?)MOVUPS(Y?)rr", "(V?)PBLENDW(Y?)rri", - "VPBROADCASTDrr", - "VPBROADCASTQrr", "(V?)PSLLDQ(Y?)ri", "(V?)PSRLDQ(Y?)ri")>; @@ -657,20 +654,8 @@ def BWWriteResGroup28 : SchedWriteRes<[BWPort5]> { let NumMicroOps = 1; let ResourceCycles = [1]; } -def: InstRW<[BWWriteResGroup28], (instregex "VBROADCASTSDYrr", - "VBROADCASTSSYrr", - "VEXTRACTF128rr", - "VEXTRACTI128rr", - "VINSERTF128rr", - "VINSERTI128rr", - "VPBROADCASTB(Y?)rr", - "VPBROADCASTDYrr", - "VPBROADCASTQYrr", - "VPBROADCASTW(Y?)rr", - "VPERM2F128rr", - "VPERM2I128rr", - "VPERMPDYri", - "VPERMQYri", +def: InstRW<[BWWriteResGroup28], (instregex "VPBROADCASTBrr", + "VPBROADCASTWrr", "VPMOVSXBDYrr", "VPMOVSXBQYrr", "VPMOVSXBWYrr", diff --git a/llvm/lib/Target/X86/X86SchedHaswell.td b/llvm/lib/Target/X86/X86SchedHaswell.td index 451aafde16a..f4da40422fd 100644 --- a/llvm/lib/Target/X86/X86SchedHaswell.td +++ b/llvm/lib/Target/X86/X86SchedHaswell.td @@ -702,7 +702,6 @@ def HWWriteResGroup4 : SchedWriteRes<[HWPort5]> { def: InstRW<[HWWriteResGroup4], (instregex "MMX_MOVD64rr", "MMX_MOVD64to64rr", "MMX_MOVQ2DQrr", - "VBROADCASTSSrr", "(V?)MOV64toPQIrr", "(V?)MOVAPD(Y?)rr", "(V?)MOVAPS(Y?)rr", @@ -710,8 +709,6 @@ def: InstRW<[HWWriteResGroup4], (instregex "MMX_MOVD64rr", "(V?)MOVUPD(Y?)rr", "(V?)MOVUPS(Y?)rr", "(V?)PBLENDW(Y?)rri", - "VPBROADCASTDrr", - "VPBROADCASTQrr", "(V?)PSLLDQ(Y?)ri", "(V?)PSRLDQ(Y?)ri")>; @@ -1503,22 +1500,8 @@ def HWWriteResGroup51 : SchedWriteRes<[HWPort5]> { let NumMicroOps = 1; let ResourceCycles = [1]; } -def: InstRW<[HWWriteResGroup51], (instregex "VBROADCASTSDYrr", - "VBROADCASTSSYrr", - "VEXTRACTF128rr", - "VEXTRACTI128rr", - "VINSERTF128rr", - "VINSERTI128rr", - "VPBROADCASTBYrr", - "VPBROADCASTBrr", - "VPBROADCASTDYrr", - "VPBROADCASTQYrr", - "VPBROADCASTWYrr", +def: InstRW<[HWWriteResGroup51], (instregex "VPBROADCASTBrr", "VPBROADCASTWrr", - "VPERM2F128rr", - "VPERM2I128rr", - "VPERMPDYri", - "VPERMQYri", "VPMOVSXBDYrr", "VPMOVSXBQYrr", "VPMOVSXBWYrr", diff --git a/llvm/lib/Target/X86/X86SchedSkylakeClient.td b/llvm/lib/Target/X86/X86SchedSkylakeClient.td index 8345cc12087..1672aea4ced 100644 --- a/llvm/lib/Target/X86/X86SchedSkylakeClient.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeClient.td @@ -362,12 +362,9 @@ def: InstRW<[SKLWriteResGroup3], (instregex "COMP_FST0r", "MMX_MOVD64to64rr", "UCOM_FPr", "UCOM_Fr", - "VBROADCASTSSrr", "(V?)MOV64toPQIrr", "(V?)MOVDI2PDIrr", "(V?)PBLENDW(Y?)rri", - "VPBROADCASTDrr", - "VPBROADCASTQrr", "(V?)PSLLDQ(Y?)ri", "(V?)PSRLDQ(Y?)ri")>; @@ -772,21 +769,9 @@ def: InstRW<[SKLWriteResGroup30], (instregex "ADD_FPrST0", "SUB_FPrST0", "SUB_FST0r", "SUB_FrST0", - "VBROADCASTSDYrr", - "VBROADCASTSSYrr", - "VEXTRACTF128rr", - "VEXTRACTI128rr", - "VINSERTF128rr", - "VINSERTI128rr", "VPBROADCASTBrr", - "VPBROADCASTDYrr", - "VPBROADCASTQYrr", - "VPBROADCASTW(Y?)rr", + "VPBROADCASTWrr", "(V?)PCMPGTQ(Y?)rr", - "VPERM2F128rr", - "VPERM2I128rr", - "VPERMPDYri", - "VPERMQYri", "VPMOVSXBDYrr", "VPMOVSXBQYrr", "VPMOVSXBWYrr", diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td index 7be738579ca..a5cb5cb400d 100755 --- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td @@ -411,16 +411,12 @@ def: InstRW<[SKXWriteResGroup3], (instregex "COMP_FST0r", "PSRLDQri", "UCOM_FPr", "UCOM_Fr", - "VBROADCASTI32X2Z128r", - "VBROADCASTSSrr", "VMOV64toPQIZrr", "VMOV64toPQIrr", "VMOVDI2PDIZrr", "VMOVDI2PDIrr", "VPBLENDWYrri", "VPBLENDWrri", - "VPBROADCASTDrr", - "VPBROADCASTQrr", "VPSLLDQYri", "VPSLLDQZ128rr", "VPSLLDQZ256rr", @@ -1372,17 +1368,6 @@ def: InstRW<[SKXWriteResGroup32], (instregex "ADD_FPrST0", "VALIGNQZ128rri", "VALIGNQZ256rri", "VALIGNQZrri", - "VBROADCASTF32X2Z256r", - "VBROADCASTF32X2Zr", - "VBROADCASTI32X2Z256r", - "VBROADCASTI32X2Zr", - "VBROADCASTSDYrr", - "VBROADCASTSDZ256r", - "VBROADCASTSDZr", - "VBROADCASTSSYrr", - "VBROADCASTSSZ128r", - "VBROADCASTSSZ256r", - "VBROADCASTSSZr", "VCMPPDZ128rri", "VCMPPDZ256rri", "VCMPPDZrri", @@ -1394,20 +1379,6 @@ def: InstRW<[SKXWriteResGroup32], (instregex "ADD_FPrST0", "VDBPSADBWZ128rri", "VDBPSADBWZ256rri", "VDBPSADBWZrri", - "VEXTRACTF128rr", - "VEXTRACTF32x4Z256rr", - "VEXTRACTF32x4Zrr", - "VEXTRACTF32x8Zrr", - "VEXTRACTF64x2Z256rr", - "VEXTRACTF64x2Zrr", - "VEXTRACTF64x4Zrr", - "VEXTRACTI128rr", - "VEXTRACTI32x4Z256rr", - "VEXTRACTI32x4Zrr", - "VEXTRACTI32x8Zrr", - "VEXTRACTI64x2Z256rr", - "VEXTRACTI64x2Zrr", - "VEXTRACTI64x4Zrr", "VFPCLASSPDZ128rr", "VFPCLASSPDZ256rr", "VFPCLASSPDZrr", @@ -1416,43 +1387,7 @@ def: InstRW<[SKXWriteResGroup32], (instregex "ADD_FPrST0", "VFPCLASSPSZrr", "VFPCLASSSDrr", "VFPCLASSSSrr", - "VINSERTF128rr", - "VINSERTF32x4Z256rr", - "VINSERTF32x4Zrr", - "VINSERTF32x8Zrr", - "VINSERTF64x2Z256rr", - "VINSERTF64x2Zrr", - "VINSERTF64x4Zrr", - "VINSERTI128rr", - "VINSERTI32x4Z256rr", - "VINSERTI32x4Zrr", - "VINSERTI32x8Zrr", - "VINSERTI64x2Z256rr", - "VINSERTI64x2Zrr", - "VINSERTI64x4Zrr", - "VPBROADCASTBYrr", - "VPBROADCASTBZ128r", - "VPBROADCASTBZ256r", - "VPBROADCASTBZr", "VPBROADCASTBrr", - "VPBROADCASTDYrr", - "VPBROADCASTDZ128r", - "VPBROADCASTDZ256r", - "VPBROADCASTDZr", - "VPBROADCASTDrZ128r", - "VPBROADCASTDrZ256r", - "VPBROADCASTDrZr", - "VPBROADCASTQYrr", - "VPBROADCASTQZ128r", - "VPBROADCASTQZ256r", - "VPBROADCASTQZr", - "VPBROADCASTQrZ128r", - "VPBROADCASTQrZ256r", - "VPBROADCASTQrZr", - "VPBROADCASTWYrr", - "VPBROADCASTWZ128r", - "VPBROADCASTWZ256r", - "VPBROADCASTWZr", "VPBROADCASTWrr", "VPCMPBZ128rri", "VPCMPBZ256rri", @@ -1504,14 +1439,6 @@ def: InstRW<[SKXWriteResGroup32], (instregex "ADD_FPrST0", "VPCMPWZ128rri", "VPCMPWZ256rri", "VPCMPWZrri", - "VPERM2F128rr", - "VPERM2I128rr", - "VPERMPDYri", - "VPERMPDZ256ri", - "VPERMPDZri", - "VPERMQYri", - "VPERMQZ256ri", - "VPERMQZri", "VPMAXSQZ128rr", "VPMAXSQZ256rr", "VPMAXSQZrr", @@ -1599,15 +1526,7 @@ def: InstRW<[SKXWriteResGroup32], (instregex "ADD_FPrST0", "VPTESTNMQZrr", "VPTESTNMWZ128rr", "VPTESTNMWZ256rr", - "VPTESTNMWZrr", - "VSHUFF32X4Z256rri", - "VSHUFF32X4Zrri", - "VSHUFF64X2Z256rri", - "VSHUFF64X2Zrri", - "VSHUFI32X4Z256rri", - "VSHUFI32X4Zrri", - "VSHUFI64X2Z256rri", - "VSHUFI64X2Zrri")>; + "VPTESTNMWZrr")>; def SKXWriteResGroup33 : SchedWriteRes<[SKXPort0,SKXPort5]> { let Latency = 3; |