diff --git a/utils/TableGen/X86RecognizableInstr.cpp b/utils/TableGen/X86RecognizableInstr.cpp index e05ab4a9888..d2847a91c68 100644 --- a/utils/TableGen/X86RecognizableInstr.cpp +++ b/utils/TableGen/X86RecognizableInstr.cpp @@ -394,8 +394,7 @@ RecognizableInstr::filter_ret RecognizableInstr::filter() const { // Filter out intrinsics - if (!Rec->isSubClassOf("X86Inst")) - return FILTER_STRONG; + assert(Rec->isSubClassOf("X86Inst") && "Can only filter X86 instructions"); if (Form == X86Local::Pseudo || (IsCodeGenOnly && Name.find("_REV") == Name.npos)) @@ -544,7 +543,7 @@ void RecognizableInstr::handleOperand(bool optional, unsigned &operandIndex, void RecognizableInstr::emitInstructionSpecifier(DisassemblerTables &tables) { Spec->name = Name; - if (!Rec->isSubClassOf("X86Inst")) + if (!ShouldBeEmitted) return; switch (filter()) { @@ -587,9 +586,6 @@ void RecognizableInstr::emitInstructionSpecifier(DisassemblerTables &tables) { } } - if (!ShouldBeEmitted) - return; - #define HANDLE_OPERAND(class) \ handleOperand(false, \ operandIndex, \