Moving definition of MnemonicContainsDot field from class Instruction to class AsmParser as suggested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187569 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/llvm/Target/Target.td b/include/llvm/Target/Target.td
index 82cd4dd..89ca529 100644
--- a/include/llvm/Target/Target.td
+++ b/include/llvm/Target/Target.td
@@ -444,9 +444,6 @@
/// constraint. For example, "$Rn = $Rd".
string TwoOperandAliasConstraint = "";
- /// Does the instruction mnemonic allow '.'
- bit MnemonicContainsDot = 0;
-
///@}
/// UseNamedOperandTable - If set, the operand indices of this instruction
@@ -821,6 +818,9 @@
// ShouldEmitMatchRegisterName - Set to false if the target needs a hand
// written register name matcher
bit ShouldEmitMatchRegisterName = 1;
+
+ /// Does the instruction mnemonic allow '.'
+ bit MnemonicContainsDot = 0;
}
def DefaultAsmParser : AsmParser;
diff --git a/lib/Target/Mips/Mips.td b/lib/Target/Mips/Mips.td
index eefb02a..2595e41 100644
--- a/lib/Target/Mips/Mips.td
+++ b/lib/Target/Mips/Mips.td
@@ -101,6 +101,7 @@
def MipsAsmParser : AsmParser {
let ShouldEmitMatchRegisterName = 0;
+ let MnemonicContainsDot = 1;
}
def MipsAsmParserVariant : AsmParserVariant {
diff --git a/lib/Target/Mips/MipsInstrFormats.td b/lib/Target/Mips/MipsInstrFormats.td
index c3108aa..1322784 100644
--- a/lib/Target/Mips/MipsInstrFormats.td
+++ b/lib/Target/Mips/MipsInstrFormats.td
@@ -97,7 +97,6 @@
let Predicates = [HasStdEnc];
string BaseOpcode = opstr;
string Arch;
- let MnemonicContainsDot = 1;
}
// Mips Pseudo Instructions Format
diff --git a/utils/TableGen/AsmMatcherEmitter.cpp b/utils/TableGen/AsmMatcherEmitter.cpp
index a7ae41e..840c9aa 100644
--- a/utils/TableGen/AsmMatcherEmitter.cpp
+++ b/utils/TableGen/AsmMatcherEmitter.cpp
@@ -837,8 +837,7 @@
}
case '.':
- if (!(TheDef->getValue("MnemonicContainsDot")) ||
- !(TheDef->getValueAsBit("MnemonicContainsDot"))) {
+ if (!Info.AsmParser->getValueAsBit("MnemonicContainsDot")) {
if (InTok)
AsmOperands.push_back(AsmOperand(String.slice(Prev, i)));
Prev = i;