diff options
| author | Roman Divacky <rdivacky@freebsd.org> | 2011-01-27 17:14:22 +0000 | 
|---|---|---|
| committer | Roman Divacky <rdivacky@freebsd.org> | 2011-01-27 17:14:22 +0000 | 
| commit | 36b1b47c5a576ad2ba47ff3a7da9c0b8ba92f031 (patch) | |
| tree | 5d58d6c356c559d3daf30c205932706df9599a9e /llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | |
| parent | 56a6380cb734a98e489940933ed590396f8e7402 (diff) | |
| download | bcm5719-llvm-36b1b47c5a576ad2ba47ff3a7da9c0b8ba92f031.tar.gz bcm5719-llvm-36b1b47c5a576ad2ba47ff3a7da9c0b8ba92f031.zip | |
Introduce virtual ParseRegister method in TargetAsmParser.
Create override of this method in X86/ARM/MBlaze.
llvm-svn: 124378
Diffstat (limited to 'llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp')
| -rw-r--r-- | llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index b388dced012..018e17d032f 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -53,6 +53,7 @@ class ARMAsmParser : public TargetAsmParser {    bool Error(SMLoc L, const Twine &Msg) { return Parser.Error(L, Msg); }    int TryParseRegister(); +  virtual bool ParseRegister(unsigned &RegNo, SMLoc &StartLoc, SMLoc &EndLoc);    bool TryParseCoprocessorOperandName(SmallVectorImpl<MCParsedAsmOperand*>&);    bool TryParseRegisterWithWriteBack(SmallVectorImpl<MCParsedAsmOperand*> &);    bool ParseRegisterList(SmallVectorImpl<MCParsedAsmOperand*> &); @@ -549,6 +550,12 @@ static unsigned MatchRegisterName(StringRef Name);  /// } +bool ARMAsmParser::ParseRegister(unsigned &RegNo, SMLoc &StartLoc, SMLoc &EndLoc) { +  RegNo = TryParseRegister(); + +  return (RegNo == (unsigned)-1); +} +  /// Try to parse a register name.  The token must be an Identifier when called,  /// and if it is a register name the token is eaten and the register number is  /// returned.  Otherwise return -1. | 

