Revert r125595, which is an X86-only undocumented assembly syntax extension
authorJim Grosbach <grosbach@apple.com>
Wed, 23 Feb 2011 21:26:51 +0000 (21:26 +0000)
committerJim Grosbach <grosbach@apple.com>
Wed, 23 Feb 2011 21:26:51 +0000 (21:26 +0000)
enabled for all targets. Non-X86 targets should not have this behavior
enabled by default.

Joerg, if you would like to resubmit with the behavior conditionalized to be
X86-ELF only, that's fine.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126336 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/MCParser/AsmParser.cpp
test/MC/AsmParser/exprs.s
test/MC/AsmParser/paren.s

index c6d0da609b3b728a438e09960136f4d268084ae6..ae072d883ba08da7279486e50272ca00a0b9c835 100644 (file)
@@ -173,7 +173,6 @@ private:
   bool ParsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc);
   bool ParseBinOpRHS(unsigned Precedence, const MCExpr *&Res, SMLoc &EndLoc);
   bool ParseParenExpr(const MCExpr *&Res, SMLoc &EndLoc);
-  bool ParseBracketExpr(const MCExpr *&Res, SMLoc &EndLoc);
 
   /// ParseIdentifier - Parse an identifier or string (as a quoted identifier)
   /// and set \arg Res to the identifier contents.
@@ -493,20 +492,6 @@ bool AsmParser::ParseParenExpr(const MCExpr *&Res, SMLoc &EndLoc) {
   return false;
 }
 
-/// ParseBracketExpr - Parse a bracket expression and return it.
-/// NOTE: This assumes the leading '[' has already been consumed.
-///
-/// bracketexpr ::= expr]
-///
-bool AsmParser::ParseBracketExpr(const MCExpr *&Res, SMLoc &EndLoc) {
-  if (ParseExpression(Res)) return true;
-  if (Lexer.isNot(AsmToken::RBrac))
-    return TokError("expected ']' in brackets expression");
-  EndLoc = Lexer.getLoc();
-  Lex();
-  return false;
-}
-
 /// ParsePrimaryExpr - Parse a primary expression and return it.
 ///  primaryexpr ::= (parenexpr
 ///  primaryexpr ::= symbol
@@ -602,9 +587,6 @@ bool AsmParser::ParsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) {
   case AsmToken::LParen:
     Lex(); // Eat the '('.
     return ParseParenExpr(Res, EndLoc);
-  case AsmToken::LBrac:
-    Lex(); // Eat the '['.
-    return ParseBracketExpr(Res, EndLoc);
   case AsmToken::Minus:
     Lex(); // Eat the operator.
     if (ParsePrimaryExpr(Res, EndLoc))
index 0861922b603ce2c13dd9de9151f4bb29b7878b45..153701d6852ac1abfa095226daf1a86249a8b673 100644 (file)
@@ -35,8 +35,6 @@ k:
         check_expr 1 << 1, 2
         check_expr 2 >> 1, 1
         check_expr (~0 >> 1), -1
-        check_expr [~0 >> 1], -1
-        check_expr 4 * [4 + (3 + [2 * 2] + 1)], 48
         check_expr 3 - 2, 1
         check_expr 1 ^ 3, 2
         check_expr 1 && 2, 1
index 702e309ddeeb3b3a1ae385f39bb3360c9e475a23..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,8 +0,0 @@
-// RUN: not llvm-mc -triple i386-unknown-unknown %s 2> %t1 > %t2
-// RUN: FileCheck < %t1 %s
-
-// CHECK: error: expected ']' in brackets expression
-.size  x, [.-x)
-
-// CHECK: error: expected ')' in parentheses expression
-.size  y, (.-y]