| 1 | //===- X86ManualCompressEVEXTables.def ---------------------------*- C++ -*-==// |
| 2 | // |
| 3 | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| 4 | // See https://llvm.org/LICENSE.txt for license information. |
| 5 | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| 6 | // |
| 7 | //===----------------------------------------------------------------------===// |
| 8 | // \file |
| 9 | // This file defines all the entries in X86 EVEX compression tables that need |
| 10 | // special handling. |
| 11 | //===----------------------------------------------------------------------===// |
| 12 | |
| 13 | #ifndef NOCOMP |
| 14 | #define NOCOMP(INSN) |
| 15 | #endif |
| 16 | NOCOMP(VCVTQQ2PDZ128rr) |
| 17 | NOCOMP(VCVTQQ2PSZ128rm) |
| 18 | NOCOMP(VCVTQQ2PSZ128rr) |
| 19 | NOCOMP(VDBPSADBWZ128rmi) |
| 20 | NOCOMP(VDBPSADBWZ128rri) |
| 21 | NOCOMP(VPMAXSQZ128rm) |
| 22 | NOCOMP(VPMAXSQZ128rr) |
| 23 | NOCOMP(VPMAXUQZ128rm) |
| 24 | NOCOMP(VPMAXUQZ128rr) |
| 25 | NOCOMP(VPMINSQZ128rm) |
| 26 | NOCOMP(VPMINSQZ128rr) |
| 27 | NOCOMP(VPMINUQZ128rm) |
| 28 | NOCOMP(VPMINUQZ128rr) |
| 29 | NOCOMP(VPMULLQZ128rm) |
| 30 | NOCOMP(VPMULLQZ128rr) |
| 31 | NOCOMP(VPSRAQZ128ri) |
| 32 | NOCOMP(VPSRAQZ128rm) |
| 33 | NOCOMP(VPSRAQZ128rr) |
| 34 | NOCOMP(VSCALEFPSZ128rm) |
| 35 | NOCOMP(VMOVZPDILo2PDIZrr) |
| 36 | NOCOMP(VDBPSADBWZ256rmi) |
| 37 | NOCOMP(VDBPSADBWZ256rri) |
| 38 | NOCOMP(VPMAXSQZ256rm) |
| 39 | NOCOMP(VPMAXSQZ256rr) |
| 40 | NOCOMP(VPMAXUQZ256rm) |
| 41 | NOCOMP(VPMAXUQZ256rr) |
| 42 | NOCOMP(VPMINSQZ256rm) |
| 43 | NOCOMP(VPMINSQZ256rr) |
| 44 | NOCOMP(VPMINUQZ256rm) |
| 45 | NOCOMP(VPMINUQZ256rr) |
| 46 | NOCOMP(VPMULLQZ256rm) |
| 47 | NOCOMP(VPMULLQZ256rr) |
| 48 | NOCOMP(VPSRAQZ256ri) |
| 49 | NOCOMP(VPSRAQZ256rm) |
| 50 | NOCOMP(VPSRAQZ256rr) |
| 51 | NOCOMP(VSCALEFPSZ256rm) |
| 52 | #undef NOCOMP |
| 53 | |
| 54 | #ifndef ENTRY |
| 55 | #define ENTRY(OLD, NEW) |
| 56 | #endif |
| 57 | ENTRY(VALIGNDZ128rmi, VPALIGNRrmi) |
| 58 | ENTRY(VALIGNDZ128rri, VPALIGNRrri) |
| 59 | ENTRY(VALIGNQZ128rmi, VPALIGNRrmi) |
| 60 | ENTRY(VALIGNQZ128rri, VPALIGNRrri) |
| 61 | ENTRY(VMAXSDZrm, VMAXSDrm) |
| 62 | ENTRY(VMAXSDZrr, VMAXSDrr) |
| 63 | ENTRY(VMAXSSZrm, VMAXSSrm) |
| 64 | ENTRY(VMAXSSZrr, VMAXSSrr) |
| 65 | ENTRY(VMINSDZrm, VMINSDrm) |
| 66 | ENTRY(VMINSDZrr, VMINSDrr) |
| 67 | ENTRY(VMINSSZrm, VMINSSrm) |
| 68 | ENTRY(VMINSSZrr, VMINSSrr) |
| 69 | ENTRY(VMOVDQU16Z128mr, VMOVDQUmr) |
| 70 | ENTRY(VMOVDQU16Z128rm, VMOVDQUrm) |
| 71 | ENTRY(VMOVDQU16Z128rr, VMOVDQUrr) |
| 72 | ENTRY(VMOVDQU8Z128mr, VMOVDQUmr) |
| 73 | ENTRY(VMOVDQU8Z128rm, VMOVDQUrm) |
| 74 | ENTRY(VMOVDQU8Z128rr, VMOVDQUrr) |
| 75 | ENTRY(VMOVDQU16Z256mr, VMOVDQUYmr) |
| 76 | ENTRY(VMOVDQU16Z256rm, VMOVDQUYrm) |
| 77 | ENTRY(VMOVDQU16Z256rr, VMOVDQUYrr) |
| 78 | ENTRY(VMOVDQU8Z256mr, VMOVDQUYmr) |
| 79 | ENTRY(VMOVDQU8Z256rm, VMOVDQUYrm) |
| 80 | ENTRY(VMOVDQU8Z256rr, VMOVDQUYrr) |
| 81 | ENTRY(VMPSADBWZ128rmi, VMPSADBWrmi) |
| 82 | ENTRY(VMPSADBWZ128rri, VMPSADBWrri) |
| 83 | ENTRY(VMPSADBWZ256rmi, VMPSADBWYrmi) |
| 84 | ENTRY(VMPSADBWZ256rri, VMPSADBWYrri) |
| 85 | ENTRY(VSHUFF32X4Z256rmi, VPERM2F128rmi) |
| 86 | ENTRY(VSHUFF32X4Z256rri, VPERM2F128rri) |
| 87 | ENTRY(VSHUFF64X2Z256rmi, VPERM2F128rmi) |
| 88 | ENTRY(VSHUFF64X2Z256rri, VPERM2F128rri) |
| 89 | ENTRY(VSHUFI32X4Z256rmi, VPERM2I128rmi) |
| 90 | ENTRY(VSHUFI32X4Z256rri, VPERM2I128rri) |
| 91 | ENTRY(VSHUFI64X2Z256rmi, VPERM2I128rmi) |
| 92 | ENTRY(VSHUFI64X2Z256rri, VPERM2I128rri) |
| 93 | // W bit does not match |
| 94 | ENTRY(VADDPDZ128rm, VADDPDrm) |
| 95 | ENTRY(VADDPDZ128rr, VADDPDrr) |
| 96 | ENTRY(VADDSDZrm, VADDSDrm) |
| 97 | ENTRY(VADDSDZrm_Int, VADDSDrm_Int) |
| 98 | ENTRY(VADDSDZrr, VADDSDrr) |
| 99 | ENTRY(VADDSDZrr_Int, VADDSDrr_Int) |
| 100 | ENTRY(VANDNPDZ128rm, VANDNPDrm) |
| 101 | ENTRY(VANDNPDZ128rr, VANDNPDrr) |
| 102 | ENTRY(VANDPDZ128rm, VANDPDrm) |
| 103 | ENTRY(VANDPDZ128rr, VANDPDrr) |
| 104 | ENTRY(VCOMISDZrm, VCOMISDrm) |
| 105 | ENTRY(VCOMISDZrm_Int, VCOMISDrm_Int) |
| 106 | ENTRY(VCOMISDZrr, VCOMISDrr) |
| 107 | ENTRY(VCOMISDZrr_Int, VCOMISDrr_Int) |
| 108 | ENTRY(VCVTPD2DQZ128rm, VCVTPD2DQrm) |
| 109 | ENTRY(VCVTPD2DQZ128rr, VCVTPD2DQrr) |
| 110 | ENTRY(VCVTPD2PSZ128rm, VCVTPD2PSrm) |
| 111 | ENTRY(VCVTPD2PSZ128rr, VCVTPD2PSrr) |
| 112 | ENTRY(VCVTSD2SSZrm, VCVTSD2SSrm) |
| 113 | ENTRY(VCVTSD2SSZrm_Int, VCVTSD2SSrm_Int) |
| 114 | ENTRY(VCVTSD2SSZrr, VCVTSD2SSrr) |
| 115 | ENTRY(VCVTSD2SSZrr_Int, VCVTSD2SSrr_Int) |
| 116 | ENTRY(VCVTTPD2DQZ128rm, VCVTTPD2DQrm) |
| 117 | ENTRY(VCVTTPD2DQZ128rr, VCVTTPD2DQrr) |
| 118 | ENTRY(VDIVPDZ128rm, VDIVPDrm) |
| 119 | ENTRY(VDIVPDZ128rr, VDIVPDrr) |
| 120 | ENTRY(VDIVSDZrm, VDIVSDrm) |
| 121 | ENTRY(VDIVSDZrm_Int, VDIVSDrm_Int) |
| 122 | ENTRY(VDIVSDZrr, VDIVSDrr) |
| 123 | ENTRY(VDIVSDZrr_Int, VDIVSDrr_Int) |
| 124 | ENTRY(VMAXCPDZ128rm, VMAXCPDrm) |
| 125 | ENTRY(VMAXCPDZ128rr, VMAXCPDrr) |
| 126 | ENTRY(VMAXCSDZrm, VMAXCSDrm) |
| 127 | ENTRY(VMAXCSDZrr, VMAXCSDrr) |
| 128 | ENTRY(VMAXPDZ128rm, VMAXPDrm) |
| 129 | ENTRY(VMAXPDZ128rr, VMAXPDrr) |
| 130 | ENTRY(VMAXSDZrm_Int, VMAXSDrm_Int) |
| 131 | ENTRY(VMAXSDZrr_Int, VMAXSDrr_Int) |
| 132 | ENTRY(VMINCPDZ128rm, VMINCPDrm) |
| 133 | ENTRY(VMINCPDZ128rr, VMINCPDrr) |
| 134 | ENTRY(VMINCSDZrm, VMINCSDrm) |
| 135 | ENTRY(VMINCSDZrr, VMINCSDrr) |
| 136 | ENTRY(VMINPDZ128rm, VMINPDrm) |
| 137 | ENTRY(VMINPDZ128rr, VMINPDrr) |
| 138 | ENTRY(VMINSDZrm_Int, VMINSDrm_Int) |
| 139 | ENTRY(VMINSDZrr_Int, VMINSDrr_Int) |
| 140 | ENTRY(VMOVAPDZ128mr, VMOVAPDmr) |
| 141 | ENTRY(VMOVAPDZ128rm, VMOVAPDrm) |
| 142 | ENTRY(VMOVAPDZ128rr, VMOVAPDrr) |
| 143 | ENTRY(VMOVDDUPZ128rm, VMOVDDUPrm) |
| 144 | ENTRY(VMOVDDUPZ128rr, VMOVDDUPrr) |
| 145 | ENTRY(VMOVDQA64Z128mr, VMOVDQAmr) |
| 146 | ENTRY(VMOVDQA64Z128rm, VMOVDQArm) |
| 147 | ENTRY(VMOVDQA64Z128rr, VMOVDQArr) |
| 148 | ENTRY(VMOVDQU64Z128mr, VMOVDQUmr) |
| 149 | ENTRY(VMOVDQU64Z128rm, VMOVDQUrm) |
| 150 | ENTRY(VMOVDQU64Z128rr, VMOVDQUrr) |
| 151 | ENTRY(VMOVHPDZ128mr, VMOVHPDmr) |
| 152 | ENTRY(VMOVHPDZ128rm, VMOVHPDrm) |
| 153 | ENTRY(VMOVLPDZ128mr, VMOVLPDmr) |
| 154 | ENTRY(VMOVLPDZ128rm, VMOVLPDrm) |
| 155 | ENTRY(VMOVNTPDZ128mr, VMOVNTPDmr) |
| 156 | ENTRY(VMOVPQI2QIZmr, VMOVPQI2QImr) |
| 157 | ENTRY(VMOVPQI2QIZrr, VMOVPQI2QIrr) |
| 158 | ENTRY(VMOVQI2PQIZrm, VMOVQI2PQIrm) |
| 159 | ENTRY(VMOVSDZmr, VMOVSDmr) |
| 160 | ENTRY(VMOVSDZrm, VMOVSDrm) |
| 161 | ENTRY(VMOVSDZrm_alt, VMOVSDrm_alt) |
| 162 | ENTRY(VMOVSDZrr, VMOVSDrr) |
| 163 | ENTRY(VMOVUPDZ128mr, VMOVUPDmr) |
| 164 | ENTRY(VMOVUPDZ128rm, VMOVUPDrm) |
| 165 | ENTRY(VMOVUPDZ128rr, VMOVUPDrr) |
| 166 | ENTRY(VMOVZPQILo2PQIZrr, VMOVZPQILo2PQIrr) |
| 167 | ENTRY(VMULPDZ128rm, VMULPDrm) |
| 168 | ENTRY(VMULPDZ128rr, VMULPDrr) |
| 169 | ENTRY(VMULSDZrm, VMULSDrm) |
| 170 | ENTRY(VMULSDZrm_Int, VMULSDrm_Int) |
| 171 | ENTRY(VMULSDZrr, VMULSDrr) |
| 172 | ENTRY(VMULSDZrr_Int, VMULSDrr_Int) |
| 173 | ENTRY(VORPDZ128rm, VORPDrm) |
| 174 | ENTRY(VORPDZ128rr, VORPDrr) |
| 175 | ENTRY(VPADDQZ128rm, VPADDQrm) |
| 176 | ENTRY(VPADDQZ128rr, VPADDQrr) |
| 177 | ENTRY(VPANDNQZ128rm, VPANDNrm) |
| 178 | ENTRY(VPANDNQZ128rr, VPANDNrr) |
| 179 | ENTRY(VPANDQZ128rm, VPANDrm) |
| 180 | ENTRY(VPANDQZ128rr, VPANDrr) |
| 181 | ENTRY(VPERMILPDZ128mi, VPERMILPDmi) |
| 182 | ENTRY(VPERMILPDZ128ri, VPERMILPDri) |
| 183 | ENTRY(VPERMILPDZ128rm, VPERMILPDrm) |
| 184 | ENTRY(VPERMILPDZ128rr, VPERMILPDrr) |
| 185 | ENTRY(VPMULDQZ128rm, VPMULDQrm) |
| 186 | ENTRY(VPMULDQZ128rr, VPMULDQrr) |
| 187 | ENTRY(VPMULUDQZ128rm, VPMULUDQrm) |
| 188 | ENTRY(VPMULUDQZ128rr, VPMULUDQrr) |
| 189 | ENTRY(VPORQZ128rm, VPORrm) |
| 190 | ENTRY(VPORQZ128rr, VPORrr) |
| 191 | ENTRY(VPSLLQZ128ri, VPSLLQri) |
| 192 | ENTRY(VPSLLQZ128rm, VPSLLQrm) |
| 193 | ENTRY(VPSLLQZ128rr, VPSLLQrr) |
| 194 | ENTRY(VPSRLQZ128ri, VPSRLQri) |
| 195 | ENTRY(VPSRLQZ128rm, VPSRLQrm) |
| 196 | ENTRY(VPSRLQZ128rr, VPSRLQrr) |
| 197 | ENTRY(VPSUBQZ128rm, VPSUBQrm) |
| 198 | ENTRY(VPSUBQZ128rr, VPSUBQrr) |
| 199 | ENTRY(VPUNPCKHQDQZ128rm, VPUNPCKHQDQrm) |
| 200 | ENTRY(VPUNPCKHQDQZ128rr, VPUNPCKHQDQrr) |
| 201 | ENTRY(VPUNPCKLQDQZ128rm, VPUNPCKLQDQrm) |
| 202 | ENTRY(VPUNPCKLQDQZ128rr, VPUNPCKLQDQrr) |
| 203 | ENTRY(VPXORQZ128rm, VPXORrm) |
| 204 | ENTRY(VPXORQZ128rr, VPXORrr) |
| 205 | ENTRY(VRNDSCALEPDZ128rmi, VROUNDPDmi) |
| 206 | ENTRY(VRNDSCALEPDZ128rri, VROUNDPDri) |
| 207 | ENTRY(VRNDSCALESDZrmi, VROUNDSDmi) |
| 208 | ENTRY(VRNDSCALESDZrmi_Int, VROUNDSDmi_Int) |
| 209 | ENTRY(VRNDSCALESDZrri, VROUNDSDri) |
| 210 | ENTRY(VRNDSCALESDZrri_Int, VROUNDSDri_Int) |
| 211 | ENTRY(VSHUFPDZ128rmi, VSHUFPDrmi) |
| 212 | ENTRY(VSHUFPDZ128rri, VSHUFPDrri) |
| 213 | ENTRY(VSQRTPDZ128m, VSQRTPDm) |
| 214 | ENTRY(VSQRTPDZ128r, VSQRTPDr) |
| 215 | ENTRY(VSQRTSDZm, VSQRTSDm) |
| 216 | ENTRY(VSQRTSDZm_Int, VSQRTSDm_Int) |
| 217 | ENTRY(VSQRTSDZr, VSQRTSDr) |
| 218 | ENTRY(VSQRTSDZr_Int, VSQRTSDr_Int) |
| 219 | ENTRY(VSUBPDZ128rm, VSUBPDrm) |
| 220 | ENTRY(VSUBPDZ128rr, VSUBPDrr) |
| 221 | ENTRY(VSUBSDZrm, VSUBSDrm) |
| 222 | ENTRY(VSUBSDZrm_Int, VSUBSDrm_Int) |
| 223 | ENTRY(VSUBSDZrr, VSUBSDrr) |
| 224 | ENTRY(VSUBSDZrr_Int, VSUBSDrr_Int) |
| 225 | ENTRY(VUCOMISDZrm, VUCOMISDrm) |
| 226 | ENTRY(VUCOMISDZrm_Int, VUCOMISDrm_Int) |
| 227 | ENTRY(VUCOMISDZrr, VUCOMISDrr) |
| 228 | ENTRY(VUCOMISDZrr_Int, VUCOMISDrr_Int) |
| 229 | ENTRY(VUNPCKHPDZ128rm, VUNPCKHPDrm) |
| 230 | ENTRY(VUNPCKHPDZ128rr, VUNPCKHPDrr) |
| 231 | ENTRY(VUNPCKLPDZ128rm, VUNPCKLPDrm) |
| 232 | ENTRY(VUNPCKLPDZ128rr, VUNPCKLPDrr) |
| 233 | ENTRY(VXORPDZ128rm, VXORPDrm) |
| 234 | ENTRY(VXORPDZ128rr, VXORPDrr) |
| 235 | ENTRY(VADDPDZ256rm, VADDPDYrm) |
| 236 | ENTRY(VADDPDZ256rr, VADDPDYrr) |
| 237 | ENTRY(VANDNPDZ256rm, VANDNPDYrm) |
| 238 | ENTRY(VANDNPDZ256rr, VANDNPDYrr) |
| 239 | ENTRY(VANDPDZ256rm, VANDPDYrm) |
| 240 | ENTRY(VANDPDZ256rr, VANDPDYrr) |
| 241 | ENTRY(VCVTPD2DQZ256rm, VCVTPD2DQYrm) |
| 242 | ENTRY(VCVTPD2DQZ256rr, VCVTPD2DQYrr) |
| 243 | ENTRY(VCVTPD2PSZ256rm, VCVTPD2PSYrm) |
| 244 | ENTRY(VCVTPD2PSZ256rr, VCVTPD2PSYrr) |
| 245 | ENTRY(VCVTTPD2DQZ256rm, VCVTTPD2DQYrm) |
| 246 | ENTRY(VCVTTPD2DQZ256rr, VCVTTPD2DQYrr) |
| 247 | ENTRY(VDIVPDZ256rm, VDIVPDYrm) |
| 248 | ENTRY(VDIVPDZ256rr, VDIVPDYrr) |
| 249 | ENTRY(VEXTRACTF64X2Z256mri, VEXTRACTF128mri) |
| 250 | ENTRY(VEXTRACTF64X2Z256rri, VEXTRACTF128rri) |
| 251 | ENTRY(VEXTRACTI64X2Z256mri, VEXTRACTI128mri) |
| 252 | ENTRY(VEXTRACTI64X2Z256rri, VEXTRACTI128rri) |
| 253 | ENTRY(VINSERTF64X2Z256rmi, VINSERTF128rmi) |
| 254 | ENTRY(VINSERTF64X2Z256rri, VINSERTF128rri) |
| 255 | ENTRY(VINSERTI64X2Z256rmi, VINSERTI128rmi) |
| 256 | ENTRY(VINSERTI64X2Z256rri, VINSERTI128rri) |
| 257 | ENTRY(VMAXCPDZ256rm, VMAXCPDYrm) |
| 258 | ENTRY(VMAXCPDZ256rr, VMAXCPDYrr) |
| 259 | ENTRY(VMAXPDZ256rm, VMAXPDYrm) |
| 260 | ENTRY(VMAXPDZ256rr, VMAXPDYrr) |
| 261 | ENTRY(VMINCPDZ256rm, VMINCPDYrm) |
| 262 | ENTRY(VMINCPDZ256rr, VMINCPDYrr) |
| 263 | ENTRY(VMINPDZ256rm, VMINPDYrm) |
| 264 | ENTRY(VMINPDZ256rr, VMINPDYrr) |
| 265 | ENTRY(VMOVAPDZ256mr, VMOVAPDYmr) |
| 266 | ENTRY(VMOVAPDZ256rm, VMOVAPDYrm) |
| 267 | ENTRY(VMOVAPDZ256rr, VMOVAPDYrr) |
| 268 | ENTRY(VMOVDDUPZ256rm, VMOVDDUPYrm) |
| 269 | ENTRY(VMOVDDUPZ256rr, VMOVDDUPYrr) |
| 270 | ENTRY(VMOVDQA64Z256mr, VMOVDQAYmr) |
| 271 | ENTRY(VMOVDQA64Z256rm, VMOVDQAYrm) |
| 272 | ENTRY(VMOVDQA64Z256rr, VMOVDQAYrr) |
| 273 | ENTRY(VMOVDQU64Z256mr, VMOVDQUYmr) |
| 274 | ENTRY(VMOVDQU64Z256rm, VMOVDQUYrm) |
| 275 | ENTRY(VMOVDQU64Z256rr, VMOVDQUYrr) |
| 276 | ENTRY(VMOVNTPDZ256mr, VMOVNTPDYmr) |
| 277 | ENTRY(VMOVUPDZ256mr, VMOVUPDYmr) |
| 278 | ENTRY(VMOVUPDZ256rm, VMOVUPDYrm) |
| 279 | ENTRY(VMOVUPDZ256rr, VMOVUPDYrr) |
| 280 | ENTRY(VMULPDZ256rm, VMULPDYrm) |
| 281 | ENTRY(VMULPDZ256rr, VMULPDYrr) |
| 282 | ENTRY(VORPDZ256rm, VORPDYrm) |
| 283 | ENTRY(VORPDZ256rr, VORPDYrr) |
| 284 | ENTRY(VPADDQZ256rm, VPADDQYrm) |
| 285 | ENTRY(VPADDQZ256rr, VPADDQYrr) |
| 286 | ENTRY(VPANDNQZ256rm, VPANDNYrm) |
| 287 | ENTRY(VPANDNQZ256rr, VPANDNYrr) |
| 288 | ENTRY(VPANDQZ256rm, VPANDYrm) |
| 289 | ENTRY(VPANDQZ256rr, VPANDYrr) |
| 290 | ENTRY(VPERMILPDZ256mi, VPERMILPDYmi) |
| 291 | ENTRY(VPERMILPDZ256ri, VPERMILPDYri) |
| 292 | ENTRY(VPERMILPDZ256rm, VPERMILPDYrm) |
| 293 | ENTRY(VPERMILPDZ256rr, VPERMILPDYrr) |
| 294 | ENTRY(VPMULDQZ256rm, VPMULDQYrm) |
| 295 | ENTRY(VPMULDQZ256rr, VPMULDQYrr) |
| 296 | ENTRY(VPMULUDQZ256rm, VPMULUDQYrm) |
| 297 | ENTRY(VPMULUDQZ256rr, VPMULUDQYrr) |
| 298 | ENTRY(VPORQZ256rm, VPORYrm) |
| 299 | ENTRY(VPORQZ256rr, VPORYrr) |
| 300 | ENTRY(VPSLLQZ256ri, VPSLLQYri) |
| 301 | ENTRY(VPSLLQZ256rm, VPSLLQYrm) |
| 302 | ENTRY(VPSLLQZ256rr, VPSLLQYrr) |
| 303 | ENTRY(VPSRLQZ256ri, VPSRLQYri) |
| 304 | ENTRY(VPSRLQZ256rm, VPSRLQYrm) |
| 305 | ENTRY(VPSRLQZ256rr, VPSRLQYrr) |
| 306 | ENTRY(VPSUBQZ256rm, VPSUBQYrm) |
| 307 | ENTRY(VPSUBQZ256rr, VPSUBQYrr) |
| 308 | ENTRY(VPUNPCKHQDQZ256rm, VPUNPCKHQDQYrm) |
| 309 | ENTRY(VPUNPCKHQDQZ256rr, VPUNPCKHQDQYrr) |
| 310 | ENTRY(VPUNPCKLQDQZ256rm, VPUNPCKLQDQYrm) |
| 311 | ENTRY(VPUNPCKLQDQZ256rr, VPUNPCKLQDQYrr) |
| 312 | ENTRY(VPXORQZ256rm, VPXORYrm) |
| 313 | ENTRY(VPXORQZ256rr, VPXORYrr) |
| 314 | ENTRY(VRNDSCALEPDZ256rmi, VROUNDPDYmi) |
| 315 | ENTRY(VRNDSCALEPDZ256rri, VROUNDPDYri) |
| 316 | ENTRY(VSHUFPDZ256rmi, VSHUFPDYrmi) |
| 317 | ENTRY(VSHUFPDZ256rri, VSHUFPDYrri) |
| 318 | ENTRY(VSQRTPDZ256m, VSQRTPDYm) |
| 319 | ENTRY(VSQRTPDZ256r, VSQRTPDYr) |
| 320 | ENTRY(VSUBPDZ256rm, VSUBPDYrm) |
| 321 | ENTRY(VSUBPDZ256rr, VSUBPDYrr) |
| 322 | ENTRY(VUNPCKHPDZ256rm, VUNPCKHPDYrm) |
| 323 | ENTRY(VUNPCKHPDZ256rr, VUNPCKHPDYrr) |
| 324 | ENTRY(VUNPCKLPDZ256rm, VUNPCKLPDYrm) |
| 325 | ENTRY(VUNPCKLPDZ256rr, VUNPCKLPDYrr) |
| 326 | ENTRY(VXORPDZ256rm, VXORPDYrm) |
| 327 | ENTRY(VXORPDZ256rr, VXORPDYrr) |
| 328 | ENTRY(VPBROADCASTQZ128rm, VPBROADCASTQrm) |
| 329 | ENTRY(VPBROADCASTQZ128rr, VPBROADCASTQrr) |
| 330 | ENTRY(VBROADCASTF64X2Z128rm, VBROADCASTF128rm) |
| 331 | ENTRY(VBROADCASTI64X2Z128rm, VBROADCASTI128rm) |
| 332 | ENTRY(VBROADCASTSDZ256rm, VBROADCASTSDYrm) |
| 333 | ENTRY(VBROADCASTSDZ256rr, VBROADCASTSDYrr) |
| 334 | ENTRY(VPBROADCASTQZ256rm, VPBROADCASTQYrm) |
| 335 | ENTRY(VPBROADCASTQZ256rr, VPBROADCASTQYrr) |
| 336 | #undef ENTRY |
| 337 | |
| 338 | #ifndef NOCOMP_ND |
| 339 | #define NOCOMP_ND(INSN) |
| 340 | #endif |
| 341 | // When condition evaluates to false, the destination register is zeroed for |
| 342 | // nonNDD CFCMOV but not for NDD CFCMOV. |
| 343 | NOCOMP_ND(CFCMOV16rm_ND) |
| 344 | NOCOMP_ND(CFCMOV16rr_ND) |
| 345 | NOCOMP_ND(CFCMOV32rm_ND) |
| 346 | NOCOMP_ND(CFCMOV32rr_ND) |
| 347 | NOCOMP_ND(CFCMOV64rm_ND) |
| 348 | NOCOMP_ND(CFCMOV64rr_ND) |
| 349 | #undef NOCOMP_ND |
| 350 | |
| 351 | #ifndef ENTRY_ND |
| 352 | #define ENTRY_ND(OLD, NEW) |
| 353 | #endif |
| 354 | ENTRY_ND(MOVBE32rr, BSWAP32r) |
| 355 | ENTRY_ND(MOVBE64rr, BSWAP64r) |
| 356 | #undef ENTRY_ND |
| 357 | |
| 358 | #ifndef ENTRY_SSE2AVX |
| 359 | #define ENTRY_SSE2AVX(OLD, NEW) |
| 360 | #endif |
| 361 | ENTRY_SSE2AVX(BLENDVPDrm0, VBLENDVPDrmr) |
| 362 | ENTRY_SSE2AVX(BLENDVPDrr0, VBLENDVPDrrr) |
| 363 | ENTRY_SSE2AVX(BLENDVPSrm0, VBLENDVPSrmr) |
| 364 | ENTRY_SSE2AVX(BLENDVPSrr0, VBLENDVPSrrr) |
| 365 | ENTRY_SSE2AVX(PBLENDVBrm0, VPBLENDVBrmr) |
| 366 | ENTRY_SSE2AVX(PBLENDVBrr0, VPBLENDVBrrr) |
| 367 | #undef ENTRY_SSE2AVX |
| 368 | |