[PATCH] D135933: [X86] Add CMPCCXADD instructions.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 20 21:05:13 PDT 2022


craig.topper added inline comments.


================
Comment at: clang/lib/Basic/Targets/X86.cpp:970
       .Case("xsaveopt", true)
+      .Case("cmpccxadd", true)
       .Default(false);
----------------
This list is alphabetized or was supposed to be


================
Comment at: clang/lib/Basic/Targets/X86.cpp:1000
       .Case("avx512vp2intersect", HasAVX512VP2INTERSECT)
+      .Case("cmpccxadd", HasCMPCCXADD)
       .Case("bmi", HasBMI)
----------------
This list is alphabetized


================
Comment at: llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h:1071
         return 1;
       // Check for AVX-512 scatter which has a TIED_TO in the second to last
       // operand.
----------------
This comment is out of date.


================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:5631
+      Info.align = Align(Size);
+      Info.flags |= MachineMemOperand::MOLoad | MachineMemOperand::MOStore;
+      return true;
----------------
Probably need MOVolatile too


================
Comment at: llvm/lib/Target/X86/X86InstrCompiler.td:1026
 
+let Predicates = [HasCMPCCXADD, In64BitMode], Defs = [EFLAGS],
+    Constraints = "$dstsrc2 = $dst" in {
----------------
 X86InstrCompiler.td is for pseudos and isCodeGenOnly=1 instructions. Basically things only needed by CodeGen and not the assembler/disassembler.


================
Comment at: llvm/utils/TableGen/X86RecognizableInstr.cpp:874
+      Form == X86Local::MRMXmCC || Form == X86Local::AddCCFrm ||
+      Form == X86Local::MRMDestMem4VOp3CC ) {
     uint8_t Count = Form == X86Local::AddRegFrm ? 8 : 16;
----------------
Extra space after MRMDestMem4VOp3CC


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D135933/new/

https://reviews.llvm.org/D135933



More information about the llvm-commits mailing list