reimplement the regex matching strategy by building a single
authorChris Lattner <sabre@nondot.org>
Fri, 25 Sep 2009 17:23:43 +0000 (17:23 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 25 Sep 2009 17:23:43 +0000 (17:23 +0000)
commit5d6a05f4d4faea0c0c96fbf2bb57655df2839b34
tree31e0dce8e11a6aea50eb3f20fa8d3fbcaf7a3c53
parent52fb79b7f9792999b18c1230b5ababaa48df9c85
reimplement the regex matching strategy by building a single
regex and matching it instead of trying to match chunks at a time.
Matching chunks at a time broke with check lines like
  CHECK: foo {{.*}}bar
because the .* would eat the entire rest of the line and bar would
never match.

Now we just escape the fixed strings for the user, so that something
like:
  CHECK: a() {{.*}}???
is matched as:
  CHECK: {{a\(\) .*\?\?\?}}
transparently "under the covers".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82779 91177308-0d34-0410-b5e6-96231b3b80d8
test/CodeGen/X86/xor.ll
utils/FileCheck/FileCheck.cpp