#
bf58d6a1 |
| 20-Feb-2021 |
Giorgis Georgakoudis <georgakoudis1@llnl.gov> |
Replace func name with regex in update_cc_test_checks
The patch adds an argument to update_cc_test_checks for replacing a function name matching a regex. This functionality is needed to match genera
Replace func name with regex in update_cc_test_checks
The patch adds an argument to update_cc_test_checks for replacing a function name matching a regex. This functionality is needed to match generated function signatures that include file hashes. Example:
The function signature for the following function:
`__omp_offloading_50_b84c41e__Z9ftemplateIiET_i_l30_worker`
with `--replace-function-regex "__omp_offloading_[0-9]+_[a-z0-9]+_(.*)"` will become:
`CHECK-LABEL: @{{__omp_offloading_[0-9]+_[a-z0-9]+__Z9ftemplateIiET_i_l30_worker}}(`
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D97107
show more ...
|
#
7549524a |
| 15-Feb-2021 |
Mircea Trofin <mtrofin@google.com> |
[NFC] Remove spurious ';' on return line in python code
|
#
f31ea86c |
| 08-Feb-2021 |
Mircea Trofin <mtrofin@google.com> |
Revert "[Utils] Add a switch controlling prefix warnings in UpdateTestChecks"
This reverts commit 87f8a08ce36e5bc72f11129d2cf36b5848f86f63.
|
#
87f8a08c |
| 01-Feb-2021 |
Mircea Trofin <mtrofin@google.com> |
[Utils] Add a switch controlling prefix warnings in UpdateTestChecks
The switch controls both unused prefix warnings, and warnings about functions which differ under different runs for a prefix, and
[Utils] Add a switch controlling prefix warnings in UpdateTestChecks
The switch controls both unused prefix warnings, and warnings about functions which differ under different runs for a prefix, and, thus, end up not having asserts for that prefix.
(If the latter case spans to all functions, then the former case kicks in)
The switch is on by default, and can be disabled.
Differential Revision: https://reviews.llvm.org/D95829
show more ...
|
Revision tags: llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2 |
|
#
93fd5232 |
| 18-Dec-2020 |
Mircea Trofin <mtrofin@google.com> |
[NFC][utils] Factor remaining APIs under FunctionTestBuilder
Finishing the refactoring started in D93413.
Differential Revision: https://reviews.llvm.org/D93506
|
#
ed1e565a |
| 16-Dec-2020 |
Mircea Trofin <mtrofin@google.com> |
[NFC] factor update test function test builder as a class
This allows us to have shared logic over multiple test runs, e.g. do we have unused prefixes, or which function bodies have conflicting outp
[NFC] factor update test function test builder as a class
This allows us to have shared logic over multiple test runs, e.g. do we have unused prefixes, or which function bodies have conflicting outputs for a prefix appearing in different RUN lines.
This patch is just wrapping existing functionality, and replacing its uses. A subsequent patch would then fold the current functionality into the newly introduced class.
Differential Revision: https://reviews.llvm.org/D93413
show more ...
|
#
380e1d91 |
| 15-Dec-2020 |
Mircea Trofin <mtrofin@google.com> |
[utils] The func_dict for a prefix may just be empty
Follow up from D92965 - since we try to find failed prefixes after each RUN line, it's possible the whole list of functions for a prefix be non-e
[utils] The func_dict for a prefix may just be empty
Follow up from D92965 - since we try to find failed prefixes after each RUN line, it's possible the whole list of functions for a prefix be non-existent, which is fine - this happens when none of the RUN lines seen so far used the prefix.
show more ...
|
#
e2dc306b |
| 11-Dec-2020 |
Mircea Trofin <mtrofin@google.com> |
[utils] Fix UpdateTestChecks case where 2 runs differ for last label
Two RUN lines produce outputs that, each, have some common parts and some different parts. The common parts are checked under lab
[utils] Fix UpdateTestChecks case where 2 runs differ for last label
Two RUN lines produce outputs that, each, have some common parts and some different parts. The common parts are checked under label A. The differing parts are associated to a function and checked under labels B and C, respectivelly. When build_function_body_dictionary is called for the first RUN line, it will attribute the function body to labels A and C. When the second RUN is passed to build_function_body_dictionary, it sees that the function body under A is different from what it has. If in this second RUN line, A were at the end of the prefixes list, A's body is still kept associated with the first run's function.
When we output the function body (i.e. add_checks), we stop after emitting for the first prefix matching that function. So we end up with the wrong function body (first RUN's A-association).
There is no reason to special-case the last label in the prefixes list, and the fix is to always clear a label association if we find a RUN line where the body is different.
Differential Revision: https://reviews.llvm.org/D93078
show more ...
|
Revision tags: llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3 |
|
#
7502040e |
| 18-Sep-2020 |
Nico Weber <thakis@chromium.org> |
clang: Make changes in 7c8bb409f31e py2.7-compatible
|
Revision tags: llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2, llvmorg-10.0.1-rc1, llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4, llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1, llvmorg-11-init |
|
#
7c8bb409 |
| 13-Jan-2020 |
David Greene <dag@cray.com> |
[UpdateCCTestChecks] Include generated functions if asked
Add the --include-generated-funcs option to update_cc_test_checks.py so that any functions created by the compiler that don't exist in the s
[UpdateCCTestChecks] Include generated functions if asked
Add the --include-generated-funcs option to update_cc_test_checks.py so that any functions created by the compiler that don't exist in the source will also be checked.
We need to maintain the output order of generated function checks so that CHECK-LABEL works properly. To do so, maintain a list of functions output for each prefix in the order they are output. Use this list to output checks for generated functions in the proper order.
Differential Revision: https://reviews.llvm.org/D83004
show more ...
|
#
ce0eb81c |
| 23-Jan-2020 |
David Greene <dag@cray.com> |
[UpdateTestChecks] Allow $ in function names
Some compilers generation functions with '$' in their names, so recognize those functions.
This also requires recognizing function names inside quotes i
[UpdateTestChecks] Allow $ in function names
Some compilers generation functions with '$' in their names, so recognize those functions.
This also requires recognizing function names inside quotes in some contexts in order to escape certain characters.
Differential Revision: https://reviews.llvm.org/D82995
show more ...
|
#
dbde3969 |
| 14-Aug-2020 |
Johannes Doerfert <johannes@jdoerfert.de> |
[UpdateTestChecks][NFC] Fix spelling
|
#
b5dd2cd2 |
| 29-Aug-2020 |
sstefan1 <sstipanovic@s-energize.com> |
[UpdateTestChecks] Don't skip attributes when comparing functions
|
#
7128e647 |
| 28-Aug-2020 |
sstefan1 <sstipanovic@s-energize.com> |
[UpdateTestChecks] include { in function signature check line
After D85099, if we have attribute group in the function signature that hasn't been seen before, and later a callsite with the same attr
[UpdateTestChecks] include { in function signature check line
After D85099, if we have attribute group in the function signature that hasn't been seen before, and later a callsite with the same attribute group, filecheck will evaluate the first attribute group to for example '#0 {'. We now include { in the args_and_sig group to avoid this.
Differential Revision: https://reviews.llvm.org/D86769
show more ...
|
#
af6140fe |
| 25-Aug-2020 |
Sam Parker <sam.parker@arm.com> |
[UpdatesTestChecks] Fix typo in common.py
global_vars_see_dict -> global_vars_seen_dict
|
#
07448c55 |
| 12-Aug-2020 |
Johannes Doerfert <johannes@jdoerfert.de> |
[UpdateTestChecks][FIX] Python 2.7 compatibility and use right prefix
|
#
97ce7fd8 |
| 10-Aug-2020 |
Johannes Doerfert <johannes@jdoerfert.de> |
[UpdateTestChecks] Match unnamed values like "@[0-9]+" and "![0-9]+"
With this patch we will match most *uses* of "temporary" named things in the IR via regular expressions, not their name at creati
[UpdateTestChecks] Match unnamed values like "@[0-9]+" and "![0-9]+"
With this patch we will match most *uses* of "temporary" named things in the IR via regular expressions, not their name at creation time. The new "values" we match are: - "unnamed" globals: `@[0-9]+` - debug metadata: `!dbg ![0-9]+` - loop metadata: `!loop ![0-9]+` - tbaa metadata: `!tbaa ![0-9]+` - range metadata: `!range ![0-9]+` - generic metadata: `metadata ![0-9]+` - attributes groups: `#[0-9]`
We still don't match the declarations but that can be done later. This patch can introduce churn when existing check lines contain the old hardcoded versions of the above "values". We can add a flag to opt-out, or opt-in, if necessary.
Reviewed By: arichardson, MaskRay
Differential Revision: https://reviews.llvm.org/D85099
show more ...
|
#
d1007478 |
| 03-Aug-2020 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
Fix update_cc_test_checks.py --llvm-bin after D78478
Not passing --clang would result in a python exception after this change: (TypeError: expected str, bytes or os.PathLike object, not NoneType) be
Fix update_cc_test_checks.py --llvm-bin after D78478
Not passing --clang would result in a python exception after this change: (TypeError: expected str, bytes or os.PathLike object, not NoneType) because the --clang argument default was only being populated in the initial argument parsing pass but not later on. Fix this by adding an argparse callback to set the default values.
Reviewed By: vitalybuka, MaskRay
Differential Revision: https://reviews.llvm.org/D84511
show more ...
|
#
cf110506 |
| 19-Jul-2020 |
sstefan1 <sstipanovic@s-energize.com> |
[Utils][Fix] remove unnecessary ; at the end
|
#
937bad35 |
| 11-Jul-2020 |
sstefan1 <sstipanovic@s-energize.com> |
[Utils] Check function attributes in update_test_checks
Summary: This introduces new flag to the update_test_checks and update_cc_test_checks that allows for function attributes to be checked in a c
[Utils] Check function attributes in update_test_checks
Summary: This introduces new flag to the update_test_checks and update_cc_test_checks that allows for function attributes to be checked in a check-line. If the flag is not set, the behavior should remain the same.
Reviewers: jdoerfert
Subscribers: arichardson, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D83629
show more ...
|
#
aae41346 |
| 07-Jul-2020 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UpdateTestChecks] Move more update_test_checks.py logic to common.py
I intend to reuse this to add UTC_ARGS support for update_llc_test_checks.py and update_cc_test_checks.py in D78478.
Reviewed B
[UpdateTestChecks] Move more update_test_checks.py logic to common.py
I intend to reuse this to add UTC_ARGS support for update_llc_test_checks.py and update_cc_test_checks.py in D78478.
Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D78618
show more ...
|
#
6ee79e9b |
| 20-Jun-2020 |
Eric Christopher <echristo@gmail.com> |
[UpdateTestChecks] As part of using inclusive language within the llvm project, migrate away from the use of blacklist and whitelist.
|
#
e5b87727 |
| 01-Jun-2020 |
Sanjay Patel <spatel@rotateright.com> |
[utils] change default nameless value to "TMP"
This is effectively reverting rGbfdc2552664d to avoid test churn while we figure out a better way forward.
We at least salvage the warning on name con
[utils] change default nameless value to "TMP"
This is effectively reverting rGbfdc2552664d to avoid test churn while we figure out a better way forward.
We at least salvage the warning on name conflict from that patch though.
If we change the default string again, we may want to mass update tests at the same time. Alternatively, we could live with the poor naming if we change -instnamer.
This also adds a test to LLVM as suggested in the post-commit review. There's a clang test that is also affected. That seems like a layering violation, but I have not looked at fixing that yet.
Differential Revision: https://reviews.llvm.org/D80584
show more ...
|
#
bfdc2552 |
| 31-May-2020 |
Sanjay Patel <spatel@rotateright.com> |
[utils] change update_test_checks.py use of 'TMP' value names
As discussed in PR45951: https://bugs.llvm.org/show_bug.cgi?id=45951
There's a potential name collision between update_test_checks.py a
[utils] change update_test_checks.py use of 'TMP' value names
As discussed in PR45951: https://bugs.llvm.org/show_bug.cgi?id=45951
There's a potential name collision between update_test_checks.py and -instnamer and/or manually-generated IR test files because all of them try to use the variable name that should never be used: "tmp".
This patch proposes to reduce the odds of collision and adds a warning if we detect the problem. This will cause regression test churn when regenerating CHECK lines on existing files.
Differential Revision: https://reviews.llvm.org/D80584
show more ...
|
#
f50bc823 |
| 23-Apr-2020 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UpdateTestChecks] Make generation of UTC_ARGS: comment more robust
We now use the argparse Action objects to determine the name of the flags. This fixes cases where the key for the stored result ('
[UpdateTestChecks] Make generation of UTC_ARGS: comment more robust
We now use the argparse Action objects to determine the name of the flags. This fixes cases where the key for the stored result ('dest') is not the same as the command line flag (e.g. --enable/--disable). Also add a test that --disabled can be part of the initial UTC_ARGS.
This is split out from D78478
Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D78617
show more ...
|