[llvm] [X86][MC] Add alias for `{evex} cmp` and `{evex} test`. (PR #99277)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 24 22:44:41 PDT 2024


================
@@ -3784,6 +3784,68 @@ bool X86AsmParser::processInstruction(MCInst &Inst, const OperandVector &Ops) {
     Inst.setOpcode(X86::INT3);
     return true;
   }
+  // `{evex} cmp <>, <>` is alias of `ccmpt {dfv=} <>, <>`
+#define FROM_TO(FROM, TO)                                                      \
+  case X86::FROM: {                                                            \
+    if (ForcedOpcodePrefix == OpcodePrefix_EVEX) {                             \
----------------
phoebewang wrote:

Can we hoist out this check in each case, e.g.,

if (ForcedOpcodePrefix == OpcodePrefix_EVEX) {
  switch (Inst.getOpcode()) {
    FROM_TO(CMP64rr, CCMP64rr)
    ...
}

https://github.com/llvm/llvm-project/pull/99277


More information about the llvm-commits mailing list