[llvm-commits] [llvm] r142537 - in /llvm/trunk: lib/MC/MCParser/AsmParser.cpp test/MC/AsmParser/line_with_hash.s

Rafael Espindola rafael.espindola at gmail.com
Wed Oct 19 11:48:52 PDT 2011


Author: rafael
Date: Wed Oct 19 13:48:52 2011
New Revision: 142537

URL: http://llvm.org/viewvc/llvm-project?rev=142537&view=rev
Log:
Fix parsing of a line with only a # in it.

Added:
    llvm/trunk/test/MC/AsmParser/line_with_hash.s
Modified:
    llvm/trunk/lib/MC/MCParser/AsmParser.cpp

Modified: llvm/trunk/lib/MC/MCParser/AsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCParser/AsmParser.cpp?rev=142537&r1=142536&r2=142537&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCParser/AsmParser.cpp (original)
+++ llvm/trunk/lib/MC/MCParser/AsmParser.cpp Wed Oct 19 13:48:52 2011
@@ -1228,7 +1228,8 @@
 /// EatToEndOfLine uses the Lexer to eat the characters to the end of the line
 /// since they may not be able to be tokenized to get to the end of line token.
 void AsmParser::EatToEndOfLine() {
- Lexer.LexUntilEndOfLine();
+  if (!Lexer.is(AsmToken::EndOfStatement))
+    Lexer.LexUntilEndOfLine();
  // Eat EOL.
  Lex();
 }

Added: llvm/trunk/test/MC/AsmParser/line_with_hash.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/AsmParser/line_with_hash.s?rev=142537&view=auto
==============================================================================
--- llvm/trunk/test/MC/AsmParser/line_with_hash.s (added)
+++ llvm/trunk/test/MC/AsmParser/line_with_hash.s Wed Oct 19 13:48:52 2011
@@ -0,0 +1,15 @@
+# RUN: llvm-mc -triple i386-unknown-unknown %s | FileCheck %s
+
+// We used to incorrectly parse a line with only a # in it
+
+.zero 42
+#
+.ifndef FOO
+.zero 2
+.else
+.endif
+.zero 24
+
+// CHECK: .zero 42
+// CHECK-NEXT: .zero 2
+// CHECK-NEXT: .zero 24





More information about the llvm-commits mailing list