[llvm] [X86] Support promoted ENQCMD and USER-MSR instructions (PR #77293)
    Phoebe Wang via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Jan  8 04:57:28 PST 2024
    
    
  
================
@@ -14,61 +14,83 @@
 
 //===----------------------------------------------------------------------===//
 // Key Locker instructions
+class Encodekey<bits<8> opcode, string mnemonic>
+  : I<opcode, MRMSrcReg, (outs GR32:$dst), (ins GR32:$src), mnemonic#"\t{$src, $dst|$dst, $src}", []>,
+    NoCD8, XS;
 
-let SchedRW = [WriteSystem], Predicates = [HasKL] in {
-  let Uses = [XMM0, EAX], Defs = [EFLAGS] in {
+class Aesencdec<bits<8> opcode, string mnemonic, SDNode node>
+  : I<opcode, MRMSrcMem, (outs VR128:$dst), (ins VR128:$src1, opaquemem:$src2),
----------------
phoebewang wrote:
Should it be `VR128X` for EVEX encoding?
https://github.com/llvm/llvm-project/pull/77293
    
    
More information about the llvm-commits
mailing list