ARM assembly, accept optional '#' on lane index number.
authorJim Grosbach <grosbach@apple.com>
Mon, 19 Mar 2012 20:39:53 +0000 (20:39 +0000)
committerJim Grosbach <grosbach@apple.com>
Mon, 19 Mar 2012 20:39:53 +0000 (20:39 +0000)
rdar://11057160

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

lib/Target/ARM/AsmParser/ARMAsmParser.cpp

index 8f3bd6dffe0abeb5453fcdfd5f9d152042a97fa7..ccdadd816691913d999db630b2655f55e75dc51d 100644 (file)
@@ -2905,6 +2905,12 @@ parseVectorLane(VectorLaneTy &LaneKind, unsigned &Index) {
       Parser.Lex(); // Eat the ']'.
       return MatchOperand_Success;
     }
+
+    // There's an optional '#' token here. Normally there wouldn't be, but
+    // inline assemble puts one in, and it's friendly to accept that.
+    if (Parser.getTok().is(AsmToken::Hash))
+      Parser.Lex(); // Eat the '#'
+
     const MCExpr *LaneIndex;
     SMLoc Loc = Parser.getTok().getLoc();
     if (getParser().ParseExpression(LaneIndex)) {