[PATCH] D30501: [X86][AVX512] Add missing entries to EVEX2VEX tables

Ayman Musa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 6 00:31:42 PST 2017


aymanmus added inline comments.


================
Comment at: lib/Target/X86/X86InstrTablesInfo.h:50
   { X86::VCOMISSZrr             ,  X86::VCOMISSrr                },
-  { X86::VCVTSD2SI64Zrm         ,  X86::VCVTSD2SI64rm            },
   { X86::VCVTSD2SI64Zrr         ,  X86::VCVTSD2SI64rr            },
----------------
craig.topper wrote:
> Why was this one removed? A review that says "add missing entries" and then removes some without explanation is confusing.
The VEX encoded instructions of these entries are defined for intrinsics.
The patch is here to stabilize the tables before pushing the tablegen backend which will replace them.


================
Comment at: lib/Target/X86/X86InstrTablesInfo.h:202
   { X86::VMAXCSSZrr             ,  X86::VMAXCSSrr                },
-  { X86::VMAXSDZrm              ,  X86::VMAXSDrm                 },
+  { X86::VMAXSDZrm              ,  X86::VMAXCSDrm                },
   { X86::VMAXSDZrm_Int          ,  X86::VMAXSDrm_Int             },
----------------
craig.topper wrote:
> The VEX instructions with a C in it are treated as commutable. The EVEX versions without a C shouldn't become commutable when they are compressed.
In this stage of the compiler there is no difference between MAX and MAXC, They have the same exact encoding and this difference is not relevant from this point and on.


https://reviews.llvm.org/D30501





More information about the llvm-commits mailing list