[llvm-commits] [llvm] r93457 - in /llvm/trunk: include/llvm/MC/MCAsmLexer.h include/llvm/MC/MCParsedAsmOperand.h include/llvm/Target/TargetAsmParser.h lib/Target/ARM/AsmParser/ARMAsmParser.cpp lib/Target/X86/AsmParser/X86AsmParser.cpp tools/llvm-mc/AsmParser.cpp

Chris Lattner sabre at nondot.org
Thu Jan 14 13:32:46 PST 2010


Author: lattner
Date: Thu Jan 14 15:32:45 2010
New Revision: 93457

URL: http://llvm.org/viewvc/llvm-project?rev=93457&view=rev
Log:
prune #includes in TargetAsmParser.h
Pass in SMLoc of instr opcode into ParseInstruction.
Make AsmToken be a class, not a struct.


Modified:
    llvm/trunk/include/llvm/MC/MCAsmLexer.h
    llvm/trunk/include/llvm/MC/MCParsedAsmOperand.h
    llvm/trunk/include/llvm/Target/TargetAsmParser.h
    llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp
    llvm/trunk/tools/llvm-mc/AsmParser.cpp

Modified: llvm/trunk/include/llvm/MC/MCAsmLexer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCAsmLexer.h?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/include/llvm/MC/MCAsmLexer.h (original)
+++ llvm/trunk/include/llvm/MC/MCAsmLexer.h Thu Jan 14 15:32:45 2010
@@ -20,7 +20,8 @@
 class Target;
 
 /// AsmToken - Target independent representation for an assembler token.
-struct AsmToken {
+class AsmToken {
+public:
   enum TokenKind {
     // Markers
     Eof, Error,

Modified: llvm/trunk/include/llvm/MC/MCParsedAsmOperand.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCParsedAsmOperand.h?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/include/llvm/MC/MCParsedAsmOperand.h (original)
+++ llvm/trunk/include/llvm/MC/MCParsedAsmOperand.h Thu Jan 14 15:32:45 2010
@@ -18,8 +18,8 @@
 /// between parsing an asm instruction and recognizing it.
 class MCParsedAsmOperand {
 public:  
-  MCParsedAsmOperand();
-  virtual ~MCParsedAsmOperand() = 0;
+  MCParsedAsmOperand() {}
+  virtual ~MCParsedAsmOperand() {}
   // TODO: Out of line vfun.
 };
 

Modified: llvm/trunk/include/llvm/Target/TargetAsmParser.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetAsmParser.h?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/include/llvm/Target/TargetAsmParser.h (original)
+++ llvm/trunk/include/llvm/Target/TargetAsmParser.h Thu Jan 14 15:32:45 2010
@@ -10,13 +10,13 @@
 #ifndef LLVM_TARGET_TARGETPARSER_H
 #define LLVM_TARGET_TARGETPARSER_H
 
-#include "llvm/MC/MCAsmLexer.h"
-
 namespace llvm {
 class MCAsmParser;
 class MCInst;
 class StringRef;
 class Target;
+class SMLoc;
+class AsmToken;
 
 /// TargetAsmParser - Generic interface to target specific assembly parsers.
 class TargetAsmParser {
@@ -45,7 +45,8 @@
   /// \param Name - The instruction name.
   /// \param Inst [out] - On success, the parsed instruction.
   /// \return True on failure.
-  virtual bool ParseInstruction(const StringRef &Name, MCInst &Inst) = 0;
+  virtual bool ParseInstruction(const StringRef &Name, SMLoc NameLoc,
+                                MCInst &Inst) = 0;
 
   /// ParseDirective - Parse a target specific assembler directive
   ///

Modified: llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp (original)
+++ llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Thu Jan 14 15:32:45 2010
@@ -95,7 +95,8 @@
   ARMAsmParser(const Target &T, MCAsmParser &_Parser)
     : TargetAsmParser(T), Parser(_Parser) {}
 
-  virtual bool ParseInstruction(const StringRef &Name, MCInst &Inst);
+  virtual bool ParseInstruction(const StringRef &Name, SMLoc NameLoc,
+                                MCInst &Inst);
 
   virtual bool ParseDirective(AsmToken DirectiveID);
 };
@@ -579,7 +580,8 @@
 }
 
 /// Parse an arm instruction mnemonic followed by its operands.
-bool ARMAsmParser::ParseInstruction(const StringRef &Name, MCInst &Inst) {
+bool ARMAsmParser::ParseInstruction(const StringRef &Name, SMLoc NameLoc,
+                                    MCInst &Inst) {
   SmallVector<ARMOperand, 7> Operands;
 
   Operands.push_back(ARMOperand::CreateToken(Name));

Modified: llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp (original)
+++ llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp Thu Jan 14 15:32:45 2010
@@ -60,7 +60,8 @@
   X86ATTAsmParser(const Target &T, MCAsmParser &_Parser)
     : TargetAsmParser(T), Parser(_Parser) {}
 
-  virtual bool ParseInstruction(const StringRef &Name, MCInst &Inst);
+  virtual bool ParseInstruction(const StringRef &Name, SMLoc NameLoc,
+                                MCInst &Inst);
 
   virtual bool ParseDirective(AsmToken DirectiveID);
 };
@@ -401,7 +402,8 @@
   return false;
 }
 
-bool X86ATTAsmParser::ParseInstruction(const StringRef &Name, MCInst &Inst) {
+bool X86ATTAsmParser::ParseInstruction(const StringRef &Name,
+                                       SMLoc NameLoc, MCInst &Inst) {
   SmallVector<X86Operand, 8> Operands;
 
   Operands.push_back(X86Operand::CreateToken(Name));

Modified: llvm/trunk/tools/llvm-mc/AsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mc/AsmParser.cpp?rev=93457&r1=93456&r2=93457&view=diff

==============================================================================
--- llvm/trunk/tools/llvm-mc/AsmParser.cpp (original)
+++ llvm/trunk/tools/llvm-mc/AsmParser.cpp Thu Jan 14 15:32:45 2010
@@ -711,7 +711,7 @@
   }
 
   MCInst Inst;
-  if (getTargetParser().ParseInstruction(IDVal, Inst))
+  if (getTargetParser().ParseInstruction(IDVal, IDLoc, Inst))
     return true;
   
   if (Lexer.isNot(AsmToken::EndOfStatement))





More information about the llvm-commits mailing list