[llvm] 3d473ae - [MC] Remove unneeded "in '.xxx' directive" from diagnostics

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Tue May 4 13:30:34 PDT 2021


Author: Fangrui Song
Date: 2021-05-04T13:30:29-07:00
New Revision: 3d473ae72ea3f1bff6db6a3ebc226f3032cf530d

URL: https://github.com/llvm/llvm-project/commit/3d473ae72ea3f1bff6db6a3ebc226f3032cf530d
DIFF: https://github.com/llvm/llvm-project/commit/3d473ae72ea3f1bff6db6a3ebc226f3032cf530d.diff

LOG: [MC] Remove unneeded "in '.xxx' directive" from diagnostics

The directive name is not useful because the next line replicates the error line
which includes the directive.

Added: 
    

Modified: 
    llvm/lib/MC/MCParser/AsmParser.cpp
    llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
    llvm/test/MC/AsmParser/equ.s
    llvm/test/MC/AsmParser/exprs-invalid.s
    llvm/test/MC/AsmParser/floating-literals.s
    llvm/test/MC/COFF/cv-fpo-errors.s
    llvm/test/MC/ELF/cfi.s
    llvm/test/MC/ELF/lto-discard.s
    llvm/test/MC/Hexagon/data-directives-invalid.s
    llvm/test/MC/Mips/asciiz-directive-bad.s
    llvm/test/MC/RISCV/data-directives-invalid.s

Removed: 
    


################################################################################
diff  --git a/llvm/lib/MC/MCParser/AsmParser.cpp b/llvm/lib/MC/MCParser/AsmParser.cpp
index 5f807d8f7ef2..9f4360ed9060 100644
--- a/llvm/lib/MC/MCParser/AsmParser.cpp
+++ b/llvm/lib/MC/MCParser/AsmParser.cpp
@@ -2944,7 +2944,7 @@ bool AsmParser::parseDirectiveSet(StringRef IDVal, bool allow_redef) {
   StringRef Name;
   if (check(parseIdentifier(Name), "expected identifier") ||
       parseToken(AsmToken::Comma) || parseAssignment(Name, allow_redef, true))
-    return addErrorSuffix(" in '" + Twine(IDVal) + "' directive");
+    return true;
   return false;
 }
 
@@ -3059,9 +3059,7 @@ bool AsmParser::parseDirectiveAscii(StringRef IDVal, bool ZeroTerminated) {
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in '" + Twine(IDVal) + "' directive");
-  return false;
+  return parseMany(parseOp);
 }
 
 /// parseDirectiveReloc
@@ -3125,9 +3123,7 @@ bool AsmParser::parseDirectiveValue(StringRef IDVal, unsigned Size) {
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in '" + Twine(IDVal) + "' directive");
-  return false;
+  return parseMany(parseOp);
 }
 
 static bool parseHexOcta(AsmParser &Asm, uint64_t &hi, uint64_t &lo) {
@@ -3169,9 +3165,7 @@ bool AsmParser::parseDirectiveOctaValue(StringRef IDVal) {
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in '" + Twine(IDVal) + "' directive");
-  return false;
+  return parseMany(parseOp);
 }
 
 bool AsmParser::parseRealValue(const fltSemantics &Semantics, APInt &Res) {
@@ -3228,9 +3222,7 @@ bool AsmParser::parseDirectiveRealValue(StringRef IDVal,
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in '" + Twine(IDVal) + "' directive");
-  return false;
+  return parseMany(parseOp);
 }
 
 /// parseDirectiveZero
@@ -3310,9 +3302,9 @@ bool AsmParser::parseDirectiveOrg() {
   int64_t FillExpr = 0;
   if (parseOptionalToken(AsmToken::Comma))
     if (parseAbsoluteExpression(FillExpr))
-      return addErrorSuffix(" in '.org' directive");
+      return true;
   if (parseEOL())
-    return addErrorSuffix(" in '.org' directive");
+    return true;
 
   getStreamer().emitValueToOffset(Offset, FillExpr, OffsetLoc);
   return false;
@@ -3349,14 +3341,14 @@ bool AsmParser::parseDirectiveAlign(bool IsPow2, unsigned ValueSize) {
   };
 
   if (checkForValidSection())
-    return addErrorSuffix(" in directive");
+    return true;
   // Ignore empty '.p2align' directives for GNU-as compatibility
   if (IsPow2 && (ValueSize == 1) && getTok().is(AsmToken::EndOfStatement)) {
     Warning(AlignmentLoc, "p2align directive with no operand(s) is ignored");
     return parseEOL();
   }
   if (parseAlign())
-    return addErrorSuffix(" in directive");
+    return true;
 
   // Always emit an alignment here even if we thrown an error.
   bool ReturnVal = false;
@@ -4042,7 +4034,7 @@ bool AsmParser::parseDirectiveCVDefRange() {
 bool AsmParser::parseDirectiveCVString() {
   std::string Data;
   if (checkForValidSection() || parseEscapedString(Data))
-    return addErrorSuffix(" in '.cv_string' directive");
+    return true;
 
   // Put the string in the table and emit the offset.
   std::pair<StringRef, unsigned> Insertion =
@@ -4084,8 +4076,8 @@ bool AsmParser::parseDirectiveCVFPOData() {
   StringRef ProcName;
   if (parseIdentifier(ProcName))
     return TokError("expected symbol name");
-  if (parseEOL("unexpected tokens"))
-    return addErrorSuffix(" in '.cv_fpo_data' directive");
+  if (parseEOL())
+    return true;
   MCSymbol *ProcSym = getContext().getOrCreateSymbol(ProcName);
   getStreamer().EmitCVFPOData(ProcSym, DirLoc);
   return false;
@@ -4124,7 +4116,7 @@ bool AsmParser::parseDirectiveCFIStartProc() {
     if (check(parseIdentifier(Simple) || Simple != "simple",
               "unexpected token") ||
         parseEOL())
-      return addErrorSuffix(" in '.cfi_startproc' directive");
+      return true;
   }
 
   // TODO(kristina): Deal with a corner case of incorrect diagnostic context
@@ -4140,7 +4132,7 @@ bool AsmParser::parseDirectiveCFIStartProc() {
 /// ::= .cfi_endproc
 bool AsmParser::parseDirectiveCFIEndProc() {
   if (parseEOL())
-    return addErrorSuffix(" in '.cfi_endproc' directive");
+    return true;
   getStreamer().emitCFIEndProc();
   return false;
 }
@@ -4776,9 +4768,9 @@ bool AsmParser::parseDirectiveSpace(StringRef IDVal) {
   int64_t FillExpr = 0;
   if (parseOptionalToken(AsmToken::Comma))
     if (parseAbsoluteExpression(FillExpr))
-      return addErrorSuffix("in '" + Twine(IDVal) + "' directive");
+      return true;
   if (parseEOL())
-    return addErrorSuffix("in '" + Twine(IDVal) + "' directive");
+    return true;
 
   // FIXME: Sometimes the fill expr is 'nop' if it isn't supplied, instead of 0.
   getStreamer().emitFill(*NumBytes, FillExpr, NumBytesLoc);
@@ -4889,10 +4881,7 @@ bool AsmParser::parseDirectiveLEB128(bool Signed) {
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in directive");
-
-  return false;
+  return parseMany(parseOp);
 }
 
 /// parseDirectiveSymbolAttribute
@@ -4918,9 +4907,7 @@ bool AsmParser::parseDirectiveSymbolAttribute(MCSymbolAttr Attr) {
     return false;
   };
 
-  if (parseMany(parseOp))
-    return addErrorSuffix(" in directive");
-  return false;
+  return parseMany(parseOp);
 }
 
 /// parseDirectiveComm
@@ -5860,9 +5847,7 @@ bool AsmParser::parseDirectiveLTODiscard() {
   };
 
   LTODiscardSymbols.clear();
-  if (parseMany(ParseOp))
-    return addErrorSuffix(" in directive");
-  return false;
+  return parseMany(ParseOp);
 }
 
 // We are comparing pointers, but the pointers are relative to a single string.

diff  --git a/llvm/test/MC/AsmParser/AArch64/directive-parse-err.s b/llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
index 5496da52fa9c..754b7afe7aee 100644
--- a/llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
+++ b/llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
@@ -3,155 +3,155 @@
 
 	// CHECK: [[#@LINE+1]]:19: error: expected newline
 	.equ   ident1, 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.equ   ident1, 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:19: error: expected newline
 	.equiv ident2, 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.equiv ident2, 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:19: error: expected newline
 	.set   ident3, 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.set   ident3, 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:20: error: unexpected token in '.ascii' directive
+	// CHECK: :[[#@LINE+1]]:20: error: unexpected token
 	.ascii  "string1" $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.ascii  "string1" // EOL COMMENT
-	// CHECK: [[@LINE+1]]:20: error: unexpected token in '.asciz' directive
+	// CHECK: :[[#@LINE+1]]:20: error: unexpected token
 	.asciz  "string2" $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.asciz  "string2" // EOL COMMENT
-	// CHECK: [[@LINE+1]]:20: error: unexpected token in '.string' directive
+	// CHECK: :[[#@LINE+1]]:20: error: unexpected token
 	.string "string3" $	
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.string "string3" // EOL COMMENT	
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.byte' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.byte 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.byte 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.b' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.b 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.b 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:8: error: unexpected token in '.dc' directive
+	// CHECK: :[[#@LINE+1]]:8: error: unexpected token
 	.dc 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.b 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.w' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.w 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.w 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.short' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.short 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.short 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.value' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.value 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.value 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.2byte' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.2byte 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.2byte 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.long' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.long 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.long 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.int' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.int  0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.int  0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.4byte' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.4byte 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.4byte 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.l' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.l 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.l 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.quad' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.quad 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.quad 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.8byte' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.8byte 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.8byte 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.a' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.a 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.a 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.octa' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.octa 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.octa 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:12: error: unexpected token in '.single' directive
+	// CHECK: :[[#@LINE+1]]:12: error: unexpected token
 	.single 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.single 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:11: error: unexpected token in '.float' directive
+	// CHECK: :[[#@LINE+1]]:11: error: unexpected token
 	.float 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.float 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.s' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.s 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.s 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:12: error: unexpected token in '.double' directive
+	// CHECK: :[[#@LINE+1]]:12: error: unexpected token
 	.double 0 $	
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.double 0 // EOL COMMENT	
-	// CHECK: [[@LINE+1]]:10: error: unexpected token in '.dc.d' directive
+	// CHECK: :[[#@LINE+1]]:10: error: unexpected token
 	.dc.d 0 $		
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.dc.d 0 // EOL COMMENT		
 	// CHECK: [[#@LINE+1]]:13: error: expected newline
 	.fill 1, 1 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.fill 1, 1 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:17: error: expected newline
 	.fill 1, 1, 10 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.fill 1, 1, 10 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:16: error: expected newline
         .org 1 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
         .org 1 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:11: error: expected newline
 	.align 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.align 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:13: error: expected newline
 	.align32 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.align32 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:12: error: expected newline
 	.balign 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.balign 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:13: error: expected newline
 	.balignw 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.balignw 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:13: error: expected newline
 	.balignl 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.balignl 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:13: error: expected newline
 	.p2align 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.p2align 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:14: error: expected newline
 	.p2alignw 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.p2alignw 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:14: error: expected newline
 	.p2alignl 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.p2alignl 0 // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:8: error: expected newline
 	.line $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.line // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:10: error: expected newline
 	.line 0 $
@@ -159,20 +159,20 @@
 	.line 0 // EOL COMMENT
 
 	.file 1 "hello"
-	// CHECK: [[@LINE+1]]:16: error: unexpected token in '.loc' directive
+	// CHECK: :[[#@LINE+1]]:16: error: unexpected token
         .loc 1 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
         .loc 1 // EOL COMMENT	
 
-	// CHECK: [[@LINE+1]]:21: error: unexpected token in '.cv_file' directive
+	// CHECK: :[[#@LINE+1]]:21: error: unexpected token
 	.cv_file 1 "hello" $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.cv_file 1 "hello" // EOL COMMENT
 
 	.cv_func_id 1
-	// CHECK: [[@LINE+1]]:14: error: unexpected token in '.cv_loc' directive
+	// CHECK: :[[#@LINE+1]]:14: error: unexpected token
 	.cv_loc 1 1 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.cv_loc 1 1 // EOL COMMENT
 	
 	// CHECK: [[#@LINE+1]]:28: error: expected newline
@@ -180,62 +180,62 @@
 	// CHECK-NOT: [[#@LINE+1]]:{{[0-9]+}}: error:
 	.bundle_lock align_to_end // EOL COMMENT	
 	
-	// CHECK: [[@LINE+1]]:11: error: invalid token in expression in directive
+	// CHECK: [[#@LINE+1]]:11: error: invalid token in expression
 	.sleb128 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.sleb128 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:13: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:13: error: unexpected token
 	.sleb128 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.sleb128 0 // EOL COMMENT
 
-	// CHECK: [[@LINE+1]]:11: error: invalid token in expression in directive
+	// CHECK: :[[#@LINE+1]]:11: error: invalid token in expression
 	.uleb128 $	
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.uleb128 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:13: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:13: error: unexpected token
 	.uleb128 0 $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.uleb128 0 // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.globl a1                    $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.globl a1                    // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.global a2                   $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.global a2                   // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.lazy_reference a3           $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.lazy_reference a3           // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.symbol_resolver a4          $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.symbol_resolver a4          // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.private_extern a5           $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.private_extern a5           // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.reference a6                $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.reference a6                // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.weak_definition a7          $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.weak_definition a7          // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.weak_reference a8           $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.weak_reference a8           // EOL COMMENT
-	// CHECK: [[@LINE+1]]:31: error: unexpected token in directive
+	// CHECK: :[[#@LINE+1]]:31: error: unexpected token
 	.weak_def_can_be_hidden a9   $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.weak_def_can_be_hidden a9   // EOL COMMENT	
-	// CHECK: [[@LINE+1]]:12: error: .warning argument must be a string
+	// CHECK: :[[#@LINE+1]]:12: error: .warning argument must be a string
 	.warning  $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.warning  // EOL COMMENT
 	// CHECK: [[#@LINE+1]]:21: error: expected newline
 	.warning "warning" $
@@ -243,14 +243,14 @@
 	.warning "warning" // EOL COMMENT
 
 
-	// CHECK: [[@LINE+1]]:17: error: unexpected token in '.cfi_startproc' directive
+	// CHECK: :[[#@LINE+1]]:17: error: unexpected token
 	.cfi_startproc $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.cfi_startproc // EOL COMMENT
 	.cfi_endproc
 	// CHECK: [[#@LINE+1]]:24: error: expected newline
 	.cfi_startproc simple $
-	// CHECK-NOT: [[@LINE+1]]:{{[0-9]+}}: error:
+	// CHECK-NOT: :[[#@LINE+1]]:{{[0-9]+}}: error:
 	.cfi_startproc simple // EOL COMMENT
 	.cfi_endproc
 

diff  --git a/llvm/test/MC/AsmParser/equ.s b/llvm/test/MC/AsmParser/equ.s
index fc5d53103056..b231f013ecbb 100644
--- a/llvm/test/MC/AsmParser/equ.s
+++ b/llvm/test/MC/AsmParser/equ.s
@@ -4,7 +4,7 @@
 .equ	a, 0
 .set	a, 1
 .equ	a, 2
+// CHECK: :[[#@LINE+1]]:11: error: redefinition of 'a'
 .equiv	a, 3
+// CHECK: :[[#@LINE+1]]:12: error: missing expression
 .set  b, ""
-// CHECK: error: redefinition of 'a'
-// CHECK: error: missing expression in '.set' directive

diff  --git a/llvm/test/MC/AsmParser/exprs-invalid.s b/llvm/test/MC/AsmParser/exprs-invalid.s
index dd1bac46b55d..c4d0c3e513ab 100644
--- a/llvm/test/MC/AsmParser/exprs-invalid.s
+++ b/llvm/test/MC/AsmParser/exprs-invalid.s
@@ -1,17 +1,17 @@
 // RUN: not llvm-mc -triple x86_64-apple-darwin10 %s 2> %t.err | FileCheck %s
 // RUN: FileCheck --check-prefix=CHECK-ERRORS %s < %t.err
 // CHECK: 	.section	__TEXT,__text,regular,pure_instructions
-// CHECK-ERRORS: [[@LINE+1]]:10: error: invalid octal number in '.long' directive
+// CHECK-ERRORS: :[[#@LINE+1]]:10: error: invalid octal number
 .long 80+08
 
-// CHECK-ERRORS: [[@LINE+1]]:10: error: invalid hexadecimal number in '.long' directive
+// CHECK-ERRORS: :[[#@LINE+1]]:10: error: invalid hexadecimal number
 .long 80+0xzz
 
-// CHECK-ERRORS: [[@LINE+1]]:7: error: out of range literal value in '.byte' directive
+// CHECK-ERRORS: :[[#@LINE+1]]:7: error: out of range literal value
 .byte 256
 
-// CHECK-ERRORS: [[@LINE+1]]:7: error: out of range literal value in '.long' directive
+// CHECK-ERRORS: :[[#@LINE+1]]:7: error: out of range literal value
 .long 4e71cf69 // double floating point constant due to missing "0x"
 
-// CHECK-ERRORS: [[@LINE+1]]:7:  error: out of range literal value in '.word' directive
+// CHECK-ERRORS: :[[#@LINE+1]]:7: error: out of range literal value
 .word 0xfffffffff

diff  --git a/llvm/test/MC/AsmParser/floating-literals.s b/llvm/test/MC/AsmParser/floating-literals.s
index d3a2321e16fb..d424aa1be344 100644
--- a/llvm/test/MC/AsmParser/floating-literals.s
+++ b/llvm/test/MC/AsmParser/floating-literals.s
@@ -86,9 +86,9 @@
 .double 1E-1
 
 
-#CHECK-ERROR: unexpected token in '.double' directive
+# CHECK-ERROR: :[[#@LINE+1]]:12: error: unexpected token
 .double 1e1e
-# CHECK-ERROR: Invalid sign in float literal
+# CHECK-ERROR: :[[#@LINE+1]]:9: error: Invalid sign in float literal
 .double 2.+1
 
 # CHECK: .long 1310177520

diff  --git a/llvm/test/MC/COFF/cv-fpo-errors.s b/llvm/test/MC/COFF/cv-fpo-errors.s
index baa2fa0d9378..e2b1a8f1eaa7 100644
--- a/llvm/test/MC/COFF/cv-fpo-errors.s
+++ b/llvm/test/MC/COFF/cv-fpo-errors.s
@@ -3,45 +3,45 @@
 .globl _foo
 _foo:
 	.cv_fpo_proc
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected symbol name
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected symbol name
 	.cv_fpo_proc 1
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected symbol name
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected symbol name
 	.cv_fpo_proc _foo extra
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected parameter byte count
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected parameter byte count
 	.cv_fpo_proc _foo 4 extra
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: unexpected tokens in '.cv_fpo_proc' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: unexpected tokens
 	.cv_fpo_proc _foo 4
 
 	pushl	%ebp
 	.cv_fpo_pushreg 1
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: invalid register name in '.cv_fpo_pushreg' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: invalid register name
 	.cv_fpo_pushreg ebp
 
 	subl $20, %esp
 	.cv_fpo_stackalloc asdf
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected offset in '.cv_fpo_stackalloc' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected offset
 	.cv_fpo_stackalloc 20 asdf
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: unexpected tokens in '.cv_fpo_stackalloc' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: unexpected tokens
 	.cv_fpo_stackalloc 20
 	.cv_fpo_endprologue asdf
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: unexpected tokens in '.cv_fpo_endprologue' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: unexpected tokens
 	.cv_fpo_endprologue
 
 	addl $20, %esp
 	popl %ebp
 	retl
 	.cv_fpo_endproc asdf
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: unexpected tokens in '.cv_fpo_endproc' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: unexpected tokens
 	.cv_fpo_endproc
 
 	.section	.debug$S,"dr"
 	.p2align	2
 	.long	4                       # Debug section magic
 	.cv_fpo_data
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected symbol name
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected symbol name
 	.cv_fpo_data 1
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: expected symbol name
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected symbol name
 	.cv_fpo_data _foo asdf
-	# CHECK: :[[@LINE-1]]:{{[0-9]+}}: error: unexpected tokens in '.cv_fpo_data' directive
+	# CHECK: :[[#@LINE-1]]:{{[0-9]+}}: error: expected newline
 	.cv_fpo_data _foo
 	.long 0

diff  --git a/llvm/test/MC/ELF/cfi.s b/llvm/test/MC/ELF/cfi.s
index d96abfdaafe4..ea0e158d5a0b 100644
--- a/llvm/test/MC/ELF/cfi.s
+++ b/llvm/test/MC/ELF/cfi.s
@@ -451,11 +451,11 @@ f37:
 // ERR: [[#@LINE+1]]:39: error: unexpected token
 .cfi_sections .debug_frame, .eh_frame $
 
-// ERR: [[#@LINE+1]]:16: error: unexpected token in '.cfi_startproc' directive
+// ERR: [[#@LINE+1]]:16: error: unexpected token
 .cfi_startproc $
-// ERR: [[#@LINE+1]]:23: error: expected newline in '.cfi_startproc' directive
+// ERR: [[#@LINE+1]]:23: error: expected newline
 .cfi_startproc simple $
 
-// ERR: [[#@LINE+1]]:14: error: expected newline in '.cfi_endproc' directive
+// ERR: [[#@LINE+1]]:14: error: expected newline
 .cfi_endproc $
 .endif

diff  --git a/llvm/test/MC/ELF/lto-discard.s b/llvm/test/MC/ELF/lto-discard.s
index 8ea8ab5775cd..0ca728e3958e 100644
--- a/llvm/test/MC/ELF/lto-discard.s
+++ b/llvm/test/MC/ELF/lto-discard.s
@@ -25,6 +25,6 @@ bar:
 
 .ifdef ERR
 .text
-# ERR: {{.*}}.s:[[#@LINE+1]]:14: error: expected identifier in directive
+# ERR: {{.*}}.s:[[#@LINE+1]]:14: error: expected identifier
 .lto_discard 1
 .endif

diff  --git a/llvm/test/MC/Hexagon/data-directives-invalid.s b/llvm/test/MC/Hexagon/data-directives-invalid.s
index a381399b2753..ffcb8db7ebcd 100644
--- a/llvm/test/MC/Hexagon/data-directives-invalid.s
+++ b/llvm/test/MC/Hexagon/data-directives-invalid.s
@@ -1,20 +1,20 @@
 # RUN: not llvm-mc -triple hexagon < %s 2>&1 | FileCheck %s
 
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.byte' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .byte 0xffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.half' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .half 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.short' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .short 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.hword' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .hword 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.2byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .2byte 0xffffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.word' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .word 0xffffffffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.long' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .long 0xffffffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.4byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .4byte 0xffffffffa
-# CHECK: [[@LINE+1]]:8: error: literal value out of range for directive in '.8byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: literal value out of range for directive
 .8byte 0xffffffffffffffffa

diff  --git a/llvm/test/MC/Mips/asciiz-directive-bad.s b/llvm/test/MC/Mips/asciiz-directive-bad.s
index 0f30cfbee630..44bd8b256a95 100644
--- a/llvm/test/MC/Mips/asciiz-directive-bad.s
+++ b/llvm/test/MC/Mips/asciiz-directive-bad.s
@@ -1,8 +1,8 @@
 # RUN: not llvm-mc -triple mips-unknown-linux %s 2>&1 | FileCheck %s
 
+# CHECK: :[[#@LINE+1]]:11: error: expected string
   .asciiz 12
-# CHECK: :[[@LINE-1]]:11: error: expected string in '.asciiz' directive
+# CHECK: :[[#@LINE+1]]:14: error: unexpected token
   .asciiz "a"3
-# CHECK: :[[@LINE-1]]:14: error: unexpected token in '.asciiz' directive
+# CHECK: :[[#@LINE+1]]:15: error: expected string
   .asciiz "a",
-# CHECK: :[[@LINE-1]]:15: error: expected string in '.asciiz' directive

diff  --git a/llvm/test/MC/RISCV/data-directives-invalid.s b/llvm/test/MC/RISCV/data-directives-invalid.s
index 6618cd17fa2e..dd94a4866bfd 100644
--- a/llvm/test/MC/RISCV/data-directives-invalid.s
+++ b/llvm/test/MC/RISCV/data-directives-invalid.s
@@ -1,23 +1,23 @@
 # RUN: not llvm-mc -triple riscv32 < %s 2>&1 | FileCheck %s
 # RUN: not llvm-mc -triple riscv64 < %s 2>&1 | FileCheck %s
 
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.byte' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .byte 0xffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.half' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .half 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.short' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .short 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.hword' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .hword 0xffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.2byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .2byte 0xffffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.word' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .word 0xffffffffa
-# CHECK: [[@LINE+1]]:7: error: out of range literal value in '.long' directive
+# CHECK: :[[#@LINE+1]]:7: error: out of range literal value
 .long 0xffffffffa
-# CHECK: [[@LINE+1]]:8: error: out of range literal value in '.4byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: out of range literal value
 .4byte 0xffffffffa
-# CHECK: [[@LINE+1]]:8: error: literal value out of range for directive in '.dword' directive
+# CHECK: :[[#@LINE+1]]:8: error: literal value out of range for directive
 .dword 0xffffffffffffffffa
-# CHECK: [[@LINE+1]]:8: error: literal value out of range for directive in '.8byte' directive
+# CHECK: :[[#@LINE+1]]:8: error: literal value out of range for directive
 .8byte 0xffffffffffffffffa


        


More information about the llvm-commits mailing list