[X86] Add interface X86II::isPseudo
authorShengchen Kan <shengchen.kan@intel.com>
Thu, 16 Apr 2020 04:37:24 +0000 (12:37 +0800)
committerShengchen Kan <shengchen.kan@intel.com>
Thu, 16 Apr 2020 04:40:17 +0000 (12:40 +0800)
Avoid duplicate code in X86MCCodeEmitter, NFCI.

llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp

index f8e893d..e141c90 100644 (file)
@@ -942,6 +942,11 @@ namespace X86II {
     return (TSFlags & X86II::FormMask) == PrefixByte;
   }
 
+  /// \returns true if the instruction with given opcode is a pseudo.
+  inline bool isPseudo(uint64_t TSFlags) {
+    return (TSFlags & X86II::FormMask) == Pseudo;
+  }
+
   /// \returns the "base" X86 opcode for the specified machine
   /// instruction.
   inline uint8_t getBaseOpcodeFor(uint64_t TSFlags) {
index 84c73aa..0176212 100644 (file)
@@ -1362,7 +1362,7 @@ void X86MCCodeEmitter::emitPrefix(const MCInst &MI, raw_ostream &OS,
   uint64_t TSFlags = Desc.TSFlags;
 
   // Pseudo instructions don't get encoded.
-  if ((TSFlags & X86II::FormMask) == X86II::Pseudo)
+  if (X86II::isPseudo(TSFlags))
     return;
 
   unsigned CurOp = X86II::getOperandBias(Desc);
@@ -1382,7 +1382,7 @@ void X86MCCodeEmitter::encodeInstruction(const MCInst &MI, raw_ostream &OS,
   uint64_t TSFlags = Desc.TSFlags;
 
   // Pseudo instructions don't get encoded.
-  if ((TSFlags & X86II::FormMask) == X86II::Pseudo)
+  if (X86II::isPseudo(TSFlags))
     return;
 
   unsigned NumOps = Desc.getNumOperands();