[llvm] r231379 - FileCheck: Document CHECK-SAME, follow-up to r230612

Duncan P. N. Exon Smith dexonsmith at apple.com
Thu Mar 5 09:00:05 PST 2015


Author: dexonsmith
Date: Thu Mar  5 11:00:05 2015
New Revision: 231379

URL: http://llvm.org/viewvc/llvm-project?rev=231379&view=rev
Log:
FileCheck: Document CHECK-SAME, follow-up to r230612

Modified:
    llvm/trunk/docs/CommandGuide/FileCheck.rst

Modified: llvm/trunk/docs/CommandGuide/FileCheck.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CommandGuide/FileCheck.rst?rev=231379&r1=231378&r2=231379&view=diff
==============================================================================
--- llvm/trunk/docs/CommandGuide/FileCheck.rst (original)
+++ llvm/trunk/docs/CommandGuide/FileCheck.rst Thu Mar  5 11:00:05 2015
@@ -185,6 +185,31 @@ For example, something like this works a
 newline between it and the previous directive.  A "``CHECK-NEXT:``" cannot be
 the first directive in a file.
 
+The "CHECK-SAME:" directive
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Sometimes you want to match lines and would like to verify that matches happen
+on the same line as the previous match.  In this case, you can use "``CHECK:``"
+and "``CHECK-SAME:``" directives to specify this.  If you specified a custom
+check prefix, just use "``<PREFIX>-SAME:``".
+
+"``CHECK-SAME:``" is particularly powerful in conjunction with "``CHECK-NOT:``"
+(described below).
+
+For example, the following works like you'd expect:
+
+.. code-block:: llvm
+
+   !0 = !MDLocation(line: 5, scope: !1, inlinedAt: !2)
+
+   ; CHECK:       !MDLocation(line: 5,
+   ; CHECK-NOT:               column:
+   ; CHECK-SAME:              scope: ![[SCOPE:[0-9]+]]
+
+"``CHECK-SAME:``" directives reject the input if there are any newlines between
+it and the previous directive.  A "``CHECK-SAME:``" cannot be the first
+directive in a file.
+
 The "CHECK-NOT:" directive
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 





More information about the llvm-commits mailing list