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
This commit is contained in:
Vladimir Medic 2013-08-01 09:25:27 +00:00
parent 87773c318f
commit 588f408b95
4 changed files with 5 additions and 6 deletions

View File

@ -444,9 +444,6 @@ class Instruction {
/// constraint. For example, "$Rn = $Rd". /// constraint. For example, "$Rn = $Rd".
string TwoOperandAliasConstraint = ""; string TwoOperandAliasConstraint = "";
/// Does the instruction mnemonic allow '.'
bit MnemonicContainsDot = 0;
///@} ///@}
/// UseNamedOperandTable - If set, the operand indices of this instruction /// UseNamedOperandTable - If set, the operand indices of this instruction
@ -821,6 +818,9 @@ class AsmParser {
// ShouldEmitMatchRegisterName - Set to false if the target needs a hand // ShouldEmitMatchRegisterName - Set to false if the target needs a hand
// written register name matcher // written register name matcher
bit ShouldEmitMatchRegisterName = 1; bit ShouldEmitMatchRegisterName = 1;
/// Does the instruction mnemonic allow '.'
bit MnemonicContainsDot = 0;
} }
def DefaultAsmParser : AsmParser; def DefaultAsmParser : AsmParser;

View File

@ -101,6 +101,7 @@ def MipsAsmWriter : AsmWriter {
def MipsAsmParser : AsmParser { def MipsAsmParser : AsmParser {
let ShouldEmitMatchRegisterName = 0; let ShouldEmitMatchRegisterName = 0;
let MnemonicContainsDot = 1;
} }
def MipsAsmParserVariant : AsmParserVariant { def MipsAsmParserVariant : AsmParserVariant {

View File

@ -97,7 +97,6 @@ class InstSE<dag outs, dag ins, string asmstr, list<dag> pattern,
let Predicates = [HasStdEnc]; let Predicates = [HasStdEnc];
string BaseOpcode = opstr; string BaseOpcode = opstr;
string Arch; string Arch;
let MnemonicContainsDot = 1;
} }
// Mips Pseudo Instructions Format // Mips Pseudo Instructions Format

View File

@ -837,8 +837,7 @@ void MatchableInfo::tokenizeAsmString(const AsmMatcherInfo &Info) {
} }
case '.': case '.':
if (!(TheDef->getValue("MnemonicContainsDot")) || if (!Info.AsmParser->getValueAsBit("MnemonicContainsDot")) {
!(TheDef->getValueAsBit("MnemonicContainsDot"))) {
if (InTok) if (InTok)
AsmOperands.push_back(AsmOperand(String.slice(Prev, i))); AsmOperands.push_back(AsmOperand(String.slice(Prev, i)));
Prev = i; Prev = i;