[llvm-dev] FileCheck wishlist

Troy Johnson via llvm-dev llvm-dev at lists.llvm.org
Wed Oct 23 08:28:22 PDT 2019

Maybe this already exists and I just don't know about it, but I find it tedious to repeat the same regex throughout a test and across multiple tests.  Case in point something like [[REG0:%[a-z0-9]+]], [[REG1:%[a-z0-9]+]], etc. when matching larger patterns.  So I've wished that FileCheck regex had something predefined for situations like that, like a normal regex has \w, or had a config file somewhere to allow defining new ones.

From: llvm-dev <llvm-dev-bounces at lists.llvm.org> on behalf of Thomas Preud'homme via llvm-dev <llvm-dev at lists.llvm.org>
Sent: Tuesday, October 22, 2019 9:01 PM
To: llvm-dev <llvm-dev at lists.llvm.org>
Subject: [llvm-dev] FileCheck wishlist


I'm looking for some feedback on pain points people have with FileCheck in terms of missing features to help people interested in working on FileCheck to prioritize the work accordingly. I am personally interested in improving FileCheck on 2 issues whenever time permits it:

  *   being able to test for consecutive lines in arbitrary order, i.e. something akin to CHECK-DAG blocks where all lines matched are consecutive
  *   DAG regions to be able to look for sequences of code that can be interleaved, which would be useful to check for register dependencies accross several operands, e.g. allowing all valid interleaving of instructions in the following sequence:

load rA, [rT]
load rB, [rX]
load rC, [rY]
load rD, [rZ]
mul rF, rA, rB
mul rG, rC, rD
add rH, rF, rG

I would therefore like to be able to define two sequences each composed of 2 loads in any order (thus using the solution for the first issue) followed by a mul that can be interleaved between each other which are followed by an add.

Do people have any other wishlist item? I propose to compile a list of all suggestions and do a poll to get an idea of what features seems to be the most wanted. This can then be used by whoever is interested in contributed to FileCheck to maximize the impact of their contribution, myself included.

Best regards,


** We have updated our privacy policy, which contains important information about how we collect and process your personal data. To read the policy, please click here<http://www.graphcore.ai/privacy> **

This email and its attachments are intended solely for the addressed recipients and may contain confidential or legally privileged information.
If you are not the intended recipient you must not copy, distribute or disseminate this email in any way; to do so may be unlawful.

Any personal data/special category personal data herein are processed in accordance with UK data protection legislation.
All associated feasible security measures are in place. Further details are available from the Privacy Notice on the website and/or from the Company.

Graphcore Limited (registered in England and Wales with registration number 10185006) is registered at 107 Cheapside, London, UK, EC2V 6DN.
This message was scanned for viruses upon transmission. However Graphcore accepts no liability for any such transmission.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191023/cdfa5ad0/attachment.html>

More information about the llvm-dev mailing list