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

Kevin Enderby enderby at apple.com
Thu Dec 23 16:12:02 PST 2010


Author: enderby
Date: Thu Dec 23 18:12:02 2010
New Revision: 122531

URL: http://llvm.org/viewvc/llvm-project?rev=122531&view=rev
Log:
In llvm-mc parse a Hash token as a full line comment.  Allows handling of
preprocessed .s files and matches darwin gas.  rdar://8798690
Also fix a comment on the next line of AsmParser.cpp after this new code.

Added:
    llvm/trunk/test/MC/AsmParser/full_line_comment.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=122531&r1=122530&r2=122531&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCParser/AsmParser.cpp (original)
+++ llvm/trunk/lib/MC/MCParser/AsmParser.cpp Thu Dec 23 18:12:02 2010
@@ -831,12 +831,17 @@
     return false;
   }
 
-  // Statements always start with an identifier.
+  // Statements always start with an identifier or are a full line comment.
   AsmToken ID = getTok();
   SMLoc IDLoc = ID.getLoc();
   StringRef IDVal;
   int64_t LocalLabelVal = -1;
-  // GUESS allow an integer followed by a ':' as a directional local label
+  // A full line comment is a '#' as the first token.
+  if (Lexer.is(AsmToken::Hash)) {
+    EatToEndOfStatement();
+    return false;
+  }
+  // Allow an integer followed by a ':' as a directional local label.
   if (Lexer.is(AsmToken::Integer)) {
     LocalLabelVal = getTok().getIntVal();
     if (LocalLabelVal < 0) {

Added: llvm/trunk/test/MC/AsmParser/full_line_comment.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/AsmParser/full_line_comment.s?rev=122531&view=auto
==============================================================================
--- llvm/trunk/test/MC/AsmParser/full_line_comment.s (added)
+++ llvm/trunk/test/MC/AsmParser/full_line_comment.s Thu Dec 23 18:12:02 2010
@@ -0,0 +1,8 @@
+// RUN: llvm-mc -triple arm-apple-darwin10 %s | FileCheck %s
+# this is a full line comment starting at column 1
+ # this starting at column 2
+
+        .data
+// CHECK: .long 0
+.long 0
+# .long 1 this line is commented out





More information about the llvm-commits mailing list