summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-mc/AsmParser.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-15 19:28:38 +0000
committerChris Lattner <sabre@nondot.org>2010-01-15 19:28:38 +0000
commit528d00b91304ded988049b555e1a5a0e90fe62d0 (patch)
tree33d3f2d3c33aac56b6bf199e7b58c62871fdd386 /llvm/tools/llvm-mc/AsmParser.h
parentd377e04489153352aad249b3a54cd4fb7c338611 (diff)
downloadbcm5719-llvm-528d00b91304ded988049b555e1a5a0e90fe62d0.tar.gz
bcm5719-llvm-528d00b91304ded988049b555e1a5a0e90fe62d0.zip
extend MCAsmParser::ParseExpression and ParseParenExpression
to return range information for subexpressions. Use this to provide range info for several new X86Operands. llvm-svn: 93534
Diffstat (limited to 'llvm/tools/llvm-mc/AsmParser.h')
-rw-r--r--llvm/tools/llvm-mc/AsmParser.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/llvm/tools/llvm-mc/AsmParser.h b/llvm/tools/llvm-mc/AsmParser.h
index 171dfcd4aa9..63bac59f7a8 100644
--- a/llvm/tools/llvm-mc/AsmParser.h
+++ b/llvm/tools/llvm-mc/AsmParser.h
@@ -79,8 +79,10 @@ public:
virtual void Warning(SMLoc L, const Twine &Meg);
virtual bool Error(SMLoc L, const Twine &Msg);
- virtual bool ParseExpression(const MCExpr *&Res);
- virtual bool ParseParenExpression(const MCExpr *&Res);
+ bool ParseExpression(const MCExpr *&Res);
+ virtual bool ParseExpression(const MCExpr *&Res,
+ SMLoc &StartLoc, SMLoc &EndLoc);
+ virtual bool ParseParenExpression(const MCExpr *&Res, SMLoc &EndLoc);
virtual bool ParseAbsoluteExpression(int64_t &Res);
/// }
@@ -105,9 +107,9 @@ private:
bool ParseAssignment(const StringRef &Name);
- bool ParsePrimaryExpr(const MCExpr *&Res);
- bool ParseBinOpRHS(unsigned Precedence, const MCExpr *&Res);
- bool ParseParenExpr(const MCExpr *&Res);
+ bool ParsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc);
+ bool ParseBinOpRHS(unsigned Precedence, const MCExpr *&Res, SMLoc &EndLoc);
+ bool ParseParenExpr(const MCExpr *&Res, SMLoc &EndLoc);
/// ParseIdentifier - Parse an identifier or string (as a quoted identifier)
/// and set \arg Res to the identifier contents.
OpenPOWER on IntegriCloud