[X86] Add the commutable floating point min/max pseudo instructions to sandybridge,haswell,broadwell,skylakeclient scheduler models.

llvm-svn: 320277
This commit is contained in:
Craig Topper 2017-12-10 01:24:05 +00:00
parent 6655eef1b4
commit 5ffe80103e
4 changed files with 160 additions and 160 deletions

View File

@ -1302,14 +1302,14 @@ def: InstRW<[BWWriteResGroup27], (instregex "CVTTPS2DQrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "IMUL(32|64)rr(i8?)")>;
def: InstRW<[BWWriteResGroup27], (instregex "IMUL8r")>;
def: InstRW<[BWWriteResGroup27], (instregex "LZCNT(16|32|64)rr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAXPDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAXPSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAXSDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAXSSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MINPDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MINPSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MINSDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MINSSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAX(C?)PDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAX(C?)PSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAX(C?)SDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MAX(C?)SSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MIN(C?)PDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MIN(C?)PSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MIN(C?)SDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MIN(C?)SSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MMX_CVTPI2PSirr")>;
def: InstRW<[BWWriteResGroup27], (instregex "MUL8r")>;
def: InstRW<[BWWriteResGroup27], (instregex "PDEP32rr")>;
@ -1356,18 +1356,18 @@ def: InstRW<[BWWriteResGroup27], (instregex "VCVTPS2DQYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VCVTPS2DQrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VCVTTPS2DQYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VCVTTPS2DQrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXPDYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXPDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXPSYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXPSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXSDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAXSSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINPDYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINPDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINPSYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINPSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINSDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMINSSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)PDYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)PDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)PSYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)PSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)SDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMAX(C?)SSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)PDYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)PDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)PSYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)PSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)SDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VMIN(C?)SSrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VSUBPDYrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VSUBPDrr")>;
def: InstRW<[BWWriteResGroup27], (instregex "VSUBPSYrr")>;
@ -2782,14 +2782,14 @@ def: InstRW<[BWWriteResGroup91], (instregex "IMUL64m")>;
def: InstRW<[BWWriteResGroup91], (instregex "IMUL(32|64)rm(i8?)")>;
def: InstRW<[BWWriteResGroup91], (instregex "IMUL8m")>;
def: InstRW<[BWWriteResGroup91], (instregex "LZCNT(16|32|64)rm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAXPDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAXPSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAXSDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAXSSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MINPDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MINPSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MINSDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MINSSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAX(C?)PDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAX(C?)PSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAX(C?)SDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MAX(C?)SSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MIN(C?)PDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MIN(C?)PSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MIN(C?)SDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MIN(C?)SSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MMX_CVTPI2PSirm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MMX_CVTPS2PIirm")>;
def: InstRW<[BWWriteResGroup91], (instregex "MMX_CVTTPS2PIirm")>;
@ -2822,14 +2822,14 @@ def: InstRW<[BWWriteResGroup91], (instregex "VCOMISSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VCVTDQ2PSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VCVTPS2DQrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VCVTTPS2DQrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAXPDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAXPSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAXSDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAXSSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMINPDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMINPSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMINSDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMINSSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAX(C?)PDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAX(C?)PSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAX(C?)SDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMAX(C?)SSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMIN(C?)PDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMIN(C?)PSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMIN(C?)SDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VMIN(C?)SSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VSUBPDrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VSUBPSrm")>;
def: InstRW<[BWWriteResGroup91], (instregex "VSUBSDrm")>;
@ -3014,10 +3014,10 @@ def: InstRW<[BWWriteResGroup101], (instregex "VCMPPSYrmi")>;
def: InstRW<[BWWriteResGroup101], (instregex "VCVTDQ2PSYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VCVTPS2DQYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VCVTTPS2DQYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMAXPDYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMAXPSYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMINPDYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMINPSYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMAX(C?)PDYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMAX(C?)PSYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMIN(C?)PDYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VMIN(C?)PSYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VSUBPDYrm")>;
def: InstRW<[BWWriteResGroup101], (instregex "VSUBPSYrm")>;

View File

@ -1597,10 +1597,10 @@ def: InstRW<[HWWriteResGroup12], (instregex "IMUL(16|32|64)m")>;
def: InstRW<[HWWriteResGroup12], (instregex "IMUL(16|32|64)rm(i8?)")>;
def: InstRW<[HWWriteResGroup12], (instregex "IMUL8m")>;
def: InstRW<[HWWriteResGroup12], (instregex "LZCNT(16|32|64)rm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MAXSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MAXSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MINSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MINSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MAX(C?)SDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MAX(C?)SSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MIN(C?)SDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MIN(C?)SSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MMX_CVTPI2PSirm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MMX_CVTPS2PIirm")>;
def: InstRW<[HWWriteResGroup12], (instregex "MMX_CVTTPS2PIirm")>;
@ -1622,10 +1622,10 @@ def: InstRW<[HWWriteResGroup12], (instregex "VCMPSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VCMPSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VCOMISDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VCOMISSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMAXSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMAXSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMINSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMINSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMAX(C?)SDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMAX(C?)SSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMIN(C?)SDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VMIN(C?)SSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VSUBSDrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VSUBSSrm")>;
def: InstRW<[HWWriteResGroup12], (instregex "VUCOMISDrm")>;
@ -2600,14 +2600,14 @@ def: InstRW<[HWWriteResGroup50], (instregex "CVTTPS2DQrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "IMUL64rr(i8?)")>;
def: InstRW<[HWWriteResGroup50], (instregex "IMUL8r")>;
def: InstRW<[HWWriteResGroup50], (instregex "LZCNT(16|32|64)rr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAXPDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAXPSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAXSDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAXSSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MINPDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MINPSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MINSDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MINSSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAX(C?)PDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAX(C?)PSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAX(C?)SDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MAX(C?)SSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MIN(C?)PDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MIN(C?)PSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MIN(C?)SDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MIN(C?)SSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MMX_CVTPI2PSirr")>;
def: InstRW<[HWWriteResGroup50], (instregex "MUL8r")>;
def: InstRW<[HWWriteResGroup50], (instregex "PDEP32rr")>;
@ -2654,18 +2654,18 @@ def: InstRW<[HWWriteResGroup50], (instregex "VCVTPS2DQYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VCVTPS2DQrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VCVTTPS2DQYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VCVTTPS2DQrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXPDYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXPDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXPSYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXPSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXSDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAXSSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINPDYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINPDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINPSYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINPSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINSDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMINSSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)PDYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)PDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)PSYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)PSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)SDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMAX(C?)SSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)PDYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)PDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)PSYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)PSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)SDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VMIN(C?)SSrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VSUBPDYrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VSUBPDrr")>;
def: InstRW<[HWWriteResGroup50], (instregex "VSUBPSYrr")>;
@ -2737,10 +2737,10 @@ def: InstRW<[HWWriteResGroup52], (instregex "CMPPSrmi")>;
def: InstRW<[HWWriteResGroup52], (instregex "CVTDQ2PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "CVTPS2DQrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "CVTTPS2DQrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MAXPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MAXPSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MINPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MINPSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MAX(C?)PDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MAX(C?)PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MIN(C?)PDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "MIN(C?)PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "SUBPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "SUBPSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VADDPDrm")>;
@ -2752,10 +2752,10 @@ def: InstRW<[HWWriteResGroup52], (instregex "VCMPPSrmi")>;
def: InstRW<[HWWriteResGroup52], (instregex "VCVTDQ2PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VCVTPS2DQrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VCVTTPS2DQrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMAXPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMAXPSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMINPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMINPSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMAX(C?)PDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMAX(C?)PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMIN(C?)PDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VMIN(C?)PSrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VSUBPDrm")>;
def: InstRW<[HWWriteResGroup52], (instregex "VSUBPSrm")>;
@ -2782,10 +2782,10 @@ def: InstRW<[HWWriteResGroup52_1], (instregex "VCMPPSYrmi")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VCVTDQ2PSYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VCVTPS2DQYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VCVTTPS2DQYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMAXPDYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMAXPSYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMINPDYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMINPSYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMAX(C?)PDYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMAX(C?)PSYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMIN(C?)PDYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VMIN(C?)PSYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VSUBPDYrm")>;
def: InstRW<[HWWriteResGroup52_1], (instregex "VSUBPSYrm")>;

View File

@ -981,14 +981,14 @@ def: InstRW<[SBWriteResGroup21], (instregex "CRC32r(16|32|64)r64")>;
def: InstRW<[SBWriteResGroup21], (instregex "CVTDQ2PSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "CVTPS2DQrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "CVTTPS2DQrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAXPDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAXPSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAXSDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAXSSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MINPDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MINPSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MINSDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MINSSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAX(C?)PDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAX(C?)PSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAX(C?)SDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MAX(C?)SSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MIN(C?)PDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MIN(C?)PSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MIN(C?)SDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MIN(C?)SSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MMX_CVTPI2PSirr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MMX_CVTPS2PIirr")>;
def: InstRW<[SBWriteResGroup21], (instregex "MMX_CVTTPS2PIirr")>;
@ -1031,18 +1031,18 @@ def: InstRW<[SBWriteResGroup21], (instregex "VCVTPS2DQYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VCVTPS2DQrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VCVTTPS2DQYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VCVTTPS2DQrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXPDYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXPDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXPSYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXPSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXSDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAXSSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINPDYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINPDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINPSYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINPSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINSDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMINSSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)PDYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)PDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)PSYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)PSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)SDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMAX(C?)SSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)PDYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)PDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)PSYrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)PSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)SDrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VMIN(C?)SSrr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VROUNDPDr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VROUNDPSr")>;
def: InstRW<[SBWriteResGroup21], (instregex "VROUNDSDr")>;
@ -2270,14 +2270,14 @@ def: InstRW<[SBWriteResGroup90], (instregex "CVTPS2DQrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "CVTSI2SD64rm")>;
def: InstRW<[SBWriteResGroup90], (instregex "CVTSI2SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "CVTTPS2DQrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAXPDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAXPSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAXSDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAXSSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MINPDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MINPSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MINSDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MINSSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAX(C?)PDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAX(C?)PSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAX(C?)SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MAX(C?)SSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MIN(C?)PDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MIN(C?)PSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MIN(C?)SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MIN(C?)SSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MMX_CVTPI2PSirm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MMX_CVTPS2PIirm")>;
def: InstRW<[SBWriteResGroup90], (instregex "MMX_CVTTPS2PIirm")>;
@ -2305,14 +2305,14 @@ def: InstRW<[SBWriteResGroup90], (instregex "VCVTPS2DQrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VCVTSI2SD64rm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VCVTSI2SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VCVTTPS2DQrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAXPDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAXPSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAXSDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAXSSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMINPDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMINPSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMINSDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMINSSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAX(C?)PDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAX(C?)PSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAX(C?)SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMAX(C?)SSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMIN(C?)PDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMIN(C?)PSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMIN(C?)SDrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VMIN(C?)SSrm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VROUNDPDm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VROUNDPSm")>;
def: InstRW<[SBWriteResGroup90], (instregex "VROUNDSDm")>;
@ -2469,10 +2469,10 @@ def: InstRW<[SBWriteResGroup101], (instregex "VCMPPSYrmi")>;
def: InstRW<[SBWriteResGroup101], (instregex "VCVTDQ2PSYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VCVTPS2DQYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VCVTTPS2DQYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMAXPDYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMAXPSYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMINPDYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMINPSYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMAX(C?)PDYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMAX(C?)PSYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMIN(C?)PDYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VMIN(C?)PSYrm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VROUNDYPDm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VROUNDYPSm")>;
def: InstRW<[SBWriteResGroup101], (instregex "VSUBPDYrm")>;

View File

@ -1726,14 +1726,14 @@ def: InstRW<[SKLWriteResGroup49], (instregex "CMPSSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "CVTDQ2PSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "CVTPS2DQrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "CVTTPS2DQrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAXPDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAXPSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAXSDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAXSSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MINPDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MINPSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MINSDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MINSSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAX(C?)PDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAX(C?)PSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAX(C?)SDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MAX(C?)SSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MIN(C?)PDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MIN(C?)PSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MIN(C?)SDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "MIN(C?)SSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "PHMINPOSUWrr128")>;
def: InstRW<[SKLWriteResGroup49], (instregex "PMADDUBSWrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "PMADDWDrr")>;
@ -1755,18 +1755,18 @@ def: InstRW<[SKLWriteResGroup49], (instregex "VCVTPS2DQYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VCVTPS2DQrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VCVTTPS2DQYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VCVTTPS2DQrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXPDYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXPDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXPSYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXPSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXSDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAXSSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINPDYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINPDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINPSYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINPSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINSDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMINSSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)PDYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)PDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)PSYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)PSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)SDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMAX(C?)SSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)PDYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)PDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)PSYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)PSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)SDrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VMIN(C?)SSrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VPHMINPOSUWrr128")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VPMADDUBSWYrr")>;
def: InstRW<[SKLWriteResGroup49], (instregex "VPMADDUBSWrr")>;
@ -3120,20 +3120,20 @@ def SKLWriteResGroup123 : SchedWriteRes<[SKLPort23,SKLPort015]> {
}
def: InstRW<[SKLWriteResGroup123], (instregex "CMPSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "CVTPS2PDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MAXSDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MAXSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MINSDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MINSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MAX(C?)SDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MAX(C?)SSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MIN(C?)SDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MIN(C?)SSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MMX_CVTPS2PIirm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "MMX_CVTTPS2PIirm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VCMPSDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VCMPSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VCVTPH2PSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VCVTPS2PDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMAXSDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMAXSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMINSDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMINSSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMAX(C?)SDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMAX(C?)SSrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMIN(C?)SDrm")>;
def: InstRW<[SKLWriteResGroup123], (instregex "VMIN(C?)SSrm")>;
def SKLWriteResGroup124 : SchedWriteRes<[SKLPort5,SKLPort015]> {
let Latency = 9;
@ -3321,10 +3321,10 @@ def: InstRW<[SKLWriteResGroup135], (instregex "CVTDQ2PSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "CVTPS2DQrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "CVTSS2SDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "CVTTPS2DQrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MAXPDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MAXPSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MINPDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MINPSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MAX(C?)PDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MAX(C?)PSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MIN(C?)PDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "MIN(C?)PSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "PHMINPOSUWrm128")>;
def: InstRW<[SKLWriteResGroup135], (instregex "PMADDUBSWrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "PMADDWDrm")>;
@ -3341,10 +3341,10 @@ def: InstRW<[SKLWriteResGroup135], (instregex "VCVTPH2PSYrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VCVTPS2DQrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VCVTSS2SDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VCVTTPS2DQrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMAXPDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMAXPSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMINPDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMINPSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMAX(C?)PDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMAX(C?)PSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMIN(C?)PDrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VMIN(C?)PSrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VPHMINPOSUWrm128")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VPMADDUBSWrm")>;
def: InstRW<[SKLWriteResGroup135], (instregex "VPMADDWDrm")>;
@ -3516,10 +3516,10 @@ def: InstRW<[SKLWriteResGroup148], (instregex "VCVTDQ2PSYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VCVTPS2DQYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VCVTPS2PDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VCVTTPS2DQYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMAXPDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMAXPSYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMINPDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMINPSYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMAX(C?)PDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMAX(C?)PSYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMIN(C?)PDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VMIN(C?)PSYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VPMADDUBSWYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VPMADDWDYrm")>;
def: InstRW<[SKLWriteResGroup148], (instregex "VPMULDQYrm")>;