[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