[PATCH] D86222: Fix PR46880: Fail CHECK-NOT with undefined variable

Thomas Preud'homme via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 27 17:20:58 PDT 2021


thopre added a comment.

In D86222#2653248 <https://reviews.llvm.org/D86222#2653248>, @jdenny wrote:

> It seems the main issue left to address is tests that this patch breaks.

A lot of the failures (e.g.  `llvm/test/Transforms/GVN/big-endian.ll`, `llvm/test/Transforms/LoopVectorize/pr34681.ll`, `llvm/test/Transforms/LoopVectorize/X86/x86-pr39099.ll`) are tests that use several CHECK-NOT with one line defining a variable and another one using it. The intent seems to be to check that a sequence of lines are not happening. These could be converted to a combined CHECK-NOT with {{(.*[[:space:]])+}} between each of the individual CHECK-NOT pattern involved but it quickly becomes unreadable. I think this highlight the need for a new feature like "CHECK-NOT-NEXT" if that makes sense. It might not be the best name, because I'm sure there will be case where they want successive line so we'd want the CHECK-NOT equivalent of (1) two consecutive CHECK, (2) a CHECK and a CHECK-NEXT and (3) a CHECK and a CHECK-SAME.

What do you think? Is adding a new feature first the best way forward? If yes, how would you design it?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86222/new/

https://reviews.llvm.org/D86222



More information about the llvm-commits mailing list