llvm-project/llvm/test/FileCheck
Thomas Preud'homme 4cd9b853b5 FileCheck [8/12]: Define numeric var from expr
Summary:
This patch is part of a patch series to add support for FileCheck
numeric expressions. This specific patch lift the restriction for a
numeric expression to either be a variable definition or a numeric
expression to try to match.

This commit allows a numeric variable to be set to the result of the
evaluation of a numeric expression after it has been matched
successfully. When it happens, the variable is allowed to be used on
the same line since its value is known at match time.

It also makes use of this possibility to reuse the parsing code to
parse a command-line definition by crafting a mirror string of the
-D option with the equal sign replaced by a colon sign, e.g. for option
'-D#NUMVAL=10' it creates the string
'-D#NUMVAL=10 (parsed as [[#NUMVAL:10]])' where the numeric expression
is parsed to define NUMVAL. This result in a few tests needing updating
for the location diagnostics on top of the tests for the new feature.

It also enables empty numeric expression which match any number without
defining a variable. This is done here rather than in commit #5 of the
patch series because it requires to dissociate automatic regex insertion
in RegExStr from variable definition which would make commit #5 even
bigger than it already is.

Copyright:
    - Linaro (changes up to diff 183612 of revision D55940)
    - GraphCore (changes in later versions of revision D55940 and
                 in new revision created off D55940)

Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk

Subscribers: hiraditya, llvm-commits, probinson, dblaikie, grimar, arichardson, tra, rnk, kristina, hfinkel, rogfer01, JonChesterfield

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D60388

> llvm-svn: 366860

llvm-svn: 366897
2019-07-24 12:38:22 +00:00
..
check-a-b-has-b.txt
check-b-a-has-b.txt
check-count.txt [FileCheck] introduce CHECK-COUNT-<num> repetition directive 2018-11-13 00:46:13 +00:00
check-dag-multi-prefix-2.txt
check-dag-multi-prefix.txt
check-dag-not-dag.txt
check-dag-overlap-torture.txt
check-dag-overlap.txt
check-dag-substring-prefix.txt
check-dag-xfails.txt
check-dag.txt
check-empty-tag.txt
check-empty.txt Fixup test after r352704 since it changes how paths may be emitted. 2019-01-31 07:58:34 +00:00
check-empty2.txt
check-label-dag-capture.txt
check-label-dag.txt
check-label.txt
check-multi-prefix-label.txt
check-multiple-prefixes-mixed.txt
check-multiple-prefixes-nomatch-2.txt
check-multiple-prefixes-nomatch.txt
check-multiple-prefixes-substr.txt
check-not-diaginfo.txt Revert "[FileCheck]] Canonicalize caret location testing" 2019-07-24 07:32:18 +00:00
check-prefixes.txt
check-substring-multi-prefix-2.txt
check-substring-multi-prefix.txt
dos-style-eol.txt
dump-input-annotations.txt [FileCheck] Suppress old -v/-vv diags if dumping input 2019-01-22 21:41:42 +00:00
dump-input-enable.txt [CommandLine] Change help output to prefix long options with `--` instead of `-`. NFC . Part 3 of 5 2019-05-03 17:47:29 +00:00
empty-regex-match-at-start.txt [FileCheck]Remove assertions that prevent matching an empty string at file start before CHECK-NEXT/SAME 2019-03-12 15:37:34 +00:00
envvar-opts.txt [FileCheck] Try to fix windows bots broken by r346272 2018-11-06 22:42:10 +00:00
first-character-match.txt
implicit-check-not.txt
line-count-2.txt
line-count.txt [FileCheck] Fix numeric variable redefinition 2019-07-18 13:39:04 +00:00
lit.local.cfg [FileCheck] Don't propagate `FILECHECK_DUMP_INPUT_ON_FAILURE` and 2019-01-10 17:24:06 +00:00
match-full-lines.txt
multiple-missing-prefixes.txt
next-no-match.txt
no-check-file.txt [FileCheck] Annotate input dump (1/7) 2018-12-18 00:01:39 +00:00
no-multi-suffixes.txt
numeric-defines-diagnostics.txt FileCheck [8/12]: Define numeric var from expr 2019-07-24 12:38:22 +00:00
numeric-defines.txt FileCheck [8/12]: Define numeric var from expr 2019-07-24 12:38:22 +00:00
numeric-expression.txt FileCheck [8/12]: Define numeric var from expr 2019-07-24 12:38:22 +00:00
opt-color.txt [SourceMgr][FileCheck] Obey -color by extending WithColor 2018-10-24 21:46:42 +00:00
regex-brackets.txt
regex-no-match.txt
same.txt
separate-multi-prefix.txt
simple-var-capture.txt
string-defines-diagnostics.txt Revert "[FileCheck]] Canonicalize caret location testing" 2019-07-24 07:32:18 +00:00
string-defines.txt [FileCheck] Introduce substitution subclasses 2019-05-23 00:10:29 +00:00
two-checks-for-same-match.txt
validate-check-prefix.txt
var-ref-same-line.txt
var-scope.txt FileCheck [7/12]: Arbitrary long numeric expressions 2019-07-13 13:24:30 +00:00
verbose.txt Revert "[FileCheck]] Canonicalize caret location testing" 2019-07-24 07:32:18 +00:00