[PATCH] D92542: [tools] Update update_test_prefix.py to handle %s after prefixes

Mircea Trofin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 3 09:02:19 PST 2020


mtrofin marked an inline comment as done.
mtrofin added inline comments.


================
Comment at: llvm/utils/update_test_prefix.py:21
         else:
-            s = re.sub('-?-check-prefixes=([^, ]+\n)', '--check-prefix=\\1', s)
-            s = re.sub('-?-check-prefixes=([^, ]+) ', '--check-prefix=\\1', s)
+            s = re.sub('-?-check-prefixes=([\w-]+[\s]*) ', '--check-prefix=\\1', s)
             t = re.search('-?-check-(?:prefix|prefixes)=([^ ]+)\s+-?-check-(?:prefix|prefixes)=([^ ]+)', s)
----------------
pengfei wrote:
> I checked it and find it didn't work. It seems `\w` in `[]` loses its function.
> I also think the `*` after `[\s]` (you can use `\s` without `[]`) is problematical for `--check-prefixes=A,B`. Besides, changing to `+` is still problematical for it may consume extera blank lines.
> It's hard to modify regular expression correctly without lots of checks, I think you can use my previous patch as a test:
> ```
> git reset --hard c22dc71b120b066c0066b8517014149a001cc2b0^1
> git show c22dc71b120b066c0066b8517014149a001cc2b0 --stat | grep "llvm/test" | cut -d " " -f 2 | xargs llvm/utils/update_test_prefix.py
> ```
> Check if the outputs are identical to the patch.
The problem seems to have been a spurious space. I tried small unittests, like this:

```
import re

test = ['-check-prefixes=abc123', '-check-prefixes=abc123-def', '-check-prefixes=abc %s', """-check-prefixes=abc
        def""", '-check-prefixes=abc,def', '-check-prefixes=abc,def %s']

for t in test:
  print(t, re.sub('-?-check-prefixes=([\w-]+[\s]*)', '--check-prefix=\\1', t))

```

```
$ python test.py
('-check-prefixes=abc123', '--check-prefix=abc123')
('-check-prefixes=abc123-def', '--check-prefix=abc123-def')
('-check-prefixes=abc %s', '--check-prefix=abc %s')
('-check-prefixes=abc\n        def', '--check-prefix=abc\n        def')
('-check-prefixes=abc,def', '--check-prefix=abc,def')
('-check-prefixes=abc,def %s', '--check-prefix=abc,def %s')
```


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D92542



More information about the llvm-commits mailing list