#
8633ef0f |
| 10-Apr-2020 |
Kang Zhang <shkzhang@cn.ibm.com> |
[PowerPC][UpdateTestChecks] Remove the extra # when scrubbing loop comments
Summary: The patch D63957 is to avoid empty string when scrubbing loop comments, it will replace loop comments to a `#`, t
[PowerPC][UpdateTestChecks] Remove the extra # when scrubbing loop comments
Summary: The patch D63957 is to avoid empty string when scrubbing loop comments, it will replace loop comments to a `#`, that's correct. But if the line has something else not only loop comments, we will get a extra `#`. The patch is to remove the extra `#`.
Reviewed By: jsji
Differential Revision: https://reviews.llvm.org/D77357
show more ...
|
#
a8b2fed0 |
| 02-Apr-2020 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils][FIX] Properly deal with occasionally deleted functions
While D68850 allowed functions to be deleted I accidentally saved some version of the function to be used once a suitable prefix was fo
[Utils][FIX] Properly deal with occasionally deleted functions
While D68850 allowed functions to be deleted I accidentally saved some version of the function to be used once a suitable prefix was found. This turned out to be problematic when the occasionally deleted function is also occasionally modified. The test case is adjusted to resemble the case in which the problem was found.
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D76586
show more ...
|
#
8905617e |
| 24-Mar-2020 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[UpdateTestChecks] Use common ir function name matcher and extend to accept periods in names (PR37586)
Remove the local versions of the IR_FUNCTION_RE matcher (they weren't doing anything different)
[UpdateTestChecks] Use common ir function name matcher and extend to accept periods in names (PR37586)
Remove the local versions of the IR_FUNCTION_RE matcher (they weren't doing anything different), and ensure all the function name matchers accept '.' and '-'.
We don't need to use '\.' inside python regex sets either, or '\-' as long as thats at the end of the set.
show more ...
|
#
59982a6d |
| 19-Feb-2020 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[UpdateTestChecks] Add support for '.' in ir function names
Will let us regenerate from amdgpu float constant tests
|
Revision tags: llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1 |
|
#
1698cc7e |
| 01-Nov-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Allow "on-the-fly" argument changes for update_test_check scripts
Update test scripts were limited because they performed a single action on the entire file and if that action was controlled
[Utils] Allow "on-the-fly" argument changes for update_test_check scripts
Update test scripts were limited because they performed a single action on the entire file and if that action was controlled by arguments, like the one introduced in D68819, there was no record of it.
This patch introduces the capability of changing the arguments passed to the script "on-the-fly" while processing a test file. In addition, an "on/off" switch was added so that processing can be disabled for parts of the file where the content is simply copied. The last extension is a record of the invocation arguments in the auto generated NOTE. These arguments are also picked up in a subsequent invocation, allowing updates with special options enabled without user interaction.
To change the arguments the string `UTC_ARGS:` has to be present in a line, followed by "additional command line arguments". That is everything that follows `UTC_ARGS:` will be added to a growing list of "command line arguments" which is reparsed after every update.
Reviewed By: arichardson
Differential Revision: https://reviews.llvm.org/D69701
show more ...
|
#
b747607b |
| 21-Dec-2019 |
James Y Knight <jyknight@google.com> |
update_test_checks: match CHECK-EMPTY lines for replacement.
In a8a89c77ea3c16b45763fca6940bbfd3bef7884f, the script started adding CHECK-EMPTY lines, but the regex for which lines to replace was no
update_test_checks: match CHECK-EMPTY lines for replacement.
In a8a89c77ea3c16b45763fca6940bbfd3bef7884f, the script started adding CHECK-EMPTY lines, but the regex for which lines to replace was not updated.
show more ...
|
#
a6c59e07 |
| 11-Oct-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Deal with occasionally deleted functions
When functions exist for some but not all run lines we need to be careful when selecting the prefix. So far, a common prefix was potentially chosen a
[Utils] Deal with occasionally deleted functions
When functions exist for some but not all run lines we need to be careful when selecting the prefix. So far, a common prefix was potentially chosen as there was never a "conflict" that would have caused otherwise. With this patch we avoid common prefixes if they are used by run lines that do not emit the function.
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D68850
show more ...
|
#
be26bd55 |
| 01-Nov-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Reuse argument variable names in the body
If we have `int foo(int a) { return a; }` and we run with --function-signature enabled, we want a single variable declaration for `a` which is reuse
[Utils] Reuse argument variable names in the body
If we have `int foo(int a) { return a; }` and we run with --function-signature enabled, we want a single variable declaration for `a` which is reused later.
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D69722
show more ...
|
#
70771d8b |
| 11-Oct-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Allow update_test_checks to scrub attribute annotations
Attribute annotations on calls, e.g., #0, are not useful on their own. This patch adds a flag to update_test_checks.py to scrub them.
[Utils] Allow update_test_checks to scrub attribute annotations
Attribute annotations on calls, e.g., #0, are not useful on their own. This patch adds a flag to update_test_checks.py to scrub them.
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D68851
show more ...
|
#
c246d6e5 |
| 03-Dec-2019 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UpdateTestChecks] Fix parsing of RUN: lines with line continuations
I accidentally broke this in d9542db49e90457de62af3bfe395aaf4c47b68a5 due to incorrectly placed parentheses.
|
#
3b55eebd |
| 02-Dec-2019 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[update_cc_test_checks.py] Use CHECK_RE from common
Summary: This change modifies the common.CHECK_RE regex to also handle '//' comment prefixes which allows us to share it between clang and IR test
[update_cc_test_checks.py] Use CHECK_RE from common
Summary: This change modifies the common.CHECK_RE regex to also handle '//' comment prefixes which allows us to share it between clang and IR tests. Using the regex from common means that *-SAME lines are also stripped now. Before this change using the --function-signature flag would result in -SAME: lines from previous runs not being removed.
Reviewers: MaskRay, jdoerfert
Reviewed By: jdoerfert
Subscribers: jdoerfert, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70890
show more ...
|
#
d9542db4 |
| 02-Dec-2019 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UpdateTestChecks] Share the code to parse RUN: lines between all scripts
Summary: This commit also introduces a common.debug() function to avoid many `if args.verbose:` statements. Depends on D7042
[UpdateTestChecks] Share the code to parse RUN: lines between all scripts
Summary: This commit also introduces a common.debug() function to avoid many `if args.verbose:` statements. Depends on D70428.
Reviewers: xbolva00, MaskRay, jdoerfert
Reviewed By: MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70432
show more ...
|
#
6187394d |
| 20-Nov-2019 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UptestTestChecks][NFC] Share some common command line options code
Summary: Add a function common.parse_commandline_args() that adds options common to all tools (--verbose and --update-only) and re
[UptestTestChecks][NFC] Share some common command line options code
Summary: Add a function common.parse_commandline_args() that adds options common to all tools (--verbose and --update-only) and returns the parsed commandline arguments. I plan to use the shared parsing of --verbose in a follow-up commit to remove most of the `if args.verbose:` checks in the scripts.
Reviewers: xbolva00, MaskRay
Reviewed By: MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70428
show more ...
|
#
e67f6477 |
| 01-Nov-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Hide the default behavior change of D68819 under a flag
With D69701, the options used when running the script on a file will be recorded and reused on a rerun. This allows us to hide new fea
[Utils] Hide the default behavior change of D68819 under a flag
With D69701, the options used when running the script on a file will be recorded and reused on a rerun. This allows us to hide new features behind flags, starting with the "define" that was introduced in D68819.
show more ...
|
#
a8a89c77 |
| 30-Oct-2019 |
Simon Atanasyan <simon@atanasyan.com> |
[utils] Reflow asm check generation to tolerate blank lines
This change introduces two fixes. The second fix allows to generate a test to check the first fix.
- Output `CHECK-EMPTY` prefix for an e
[utils] Reflow asm check generation to tolerate blank lines
This change introduces two fixes. The second fix allows to generate a test to check the first fix.
- Output `CHECK-EMPTY` prefix for an empty line in ASM output. Before that fix `update_llc_test_checks.py` incorrectly emits `CHECK-NEXT: <space>` prefix. - Fix the `ASM_FUNCTION_MIPS_RE` regex to stop on a real function epilogue not on an inline assembler prologue and include inline assembler code into a test.
Differential Revision: https://reviews.llvm.org/D47192
show more ...
|
#
3598b810 |
| 10-Oct-2019 |
Johannes Doerfert <johannes@jdoerfert.de> |
[Utils] Allow update_test_checks to check function information
Summary: This adds a switch to the update_test_checks that triggers arguments and other function annotations, e.g., personality, to be
[Utils] Allow update_test_checks to check function information
Summary: This adds a switch to the update_test_checks that triggers arguments and other function annotations, e.g., personality, to be present in the check line. If not set, the behavior should be the same as before. If arguments are recorded, their names are scrubbed from the IR to allow merging.
This patch includes D68153.
Reviewers: lebedev.ri, greened, spatel, xbolva00, RKSimon, mehdi_amini
Subscribers: bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D68819
show more ...
|
#
2dad717c |
| 30-Oct-2019 |
Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> |
[UpdateTestChecks] Fix invalid python string escapes
|
#
a14ffc7e |
| 07-Oct-2019 |
David Greene <greened@obbligato.org> |
Allow update_test_checks.py to not scrub names.
Add a --preserve-names option to tell the script not to replace IR names. Sometimes tests want those names. For example if a test is looking for a mo
Allow update_test_checks.py to not scrub names.
Add a --preserve-names option to tell the script not to replace IR names. Sometimes tests want those names. For example if a test is looking for a modification to an existing instruction we'll want to make the names.
Differential Revision: https://reviews.llvm.org/D68081
llvm-svn: 373912
show more ...
|
Revision tags: llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5, llvmorg-9.0.0-rc4, llvmorg-9.0.0-rc3, llvmorg-9.0.0-rc2 |
|
#
7169ea39 |
| 07-Aug-2019 |
David Bolvansky <david.bolvansky@gmail.com> |
[UpdateTestChecks] Update tests option
Summary: Port of new feature introduced https://reviews.llvm.org/D65610 to other update scripts.
- update_*_checks.py: add an alias -u for --update-only - por
[UpdateTestChecks] Update tests option
Summary: Port of new feature introduced https://reviews.llvm.org/D65610 to other update scripts.
- update_*_checks.py: add an alias -u for --update-only - port --update-only to other update_*_test_checks.py scripts - update script aborts if the test file was generated by another update_*_test_checks.py utility
Reviewers: lebedev.ri, RKSimon, MaskRay, reames, gbedwell
Reviewed By: MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65793
llvm-svn: 368174
show more ...
|
#
45be5e47 |
| 29-Jul-2019 |
David Bolvansky <david.bolvansky@gmail.com> |
[UpdateTestChecks] Emit warning when invalid value for -check-prefix(es) option
Summary: The script is silent for the following issue: FileCheck %s -check-prefix=CHECK,POPCOUNT
FileCheck will catch
[UpdateTestChecks] Emit warning when invalid value for -check-prefix(es) option
Summary: The script is silent for the following issue: FileCheck %s -check-prefix=CHECK,POPCOUNT
FileCheck will catch it later, but I think we can warn here too.
Now it warns: ./update_llc_test_checks.py file.ll WARNING: Supplied prefix 'CHECK,POPCOUNT' is invalid. Prefix must contain only alphanumeric characters, hyphens and underscores. Did you mean --check-prefixes=CHECK,POPCOUNT?
Reviewers: lebedev.ri, spatel, RKSimon, craig.topper, nikic, gbedwell
Reviewed By: RKSimon
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64589
llvm-svn: 367244
show more ...
|
Revision tags: llvmorg-9.0.0-rc1 |
|
#
6ef23e65 |
| 22-Jul-2019 |
Fangrui Song <maskray@google.com> |
[utils] Clean up UpdateTestChecks/common.py
llvm-svn: 366664
|
Revision tags: llvmorg-10-init, llvmorg-8.0.1, llvmorg-8.0.1-rc4, llvmorg-8.0.1-rc3, llvmorg-8.0.1-rc2, llvmorg-8.0.1-rc1, llvmorg-8.0.0, llvmorg-8.0.0-rc5, llvmorg-8.0.0-rc4, llvmorg-8.0.0-rc3, llvmorg-7.1.0, llvmorg-7.1.0-rc1, llvmorg-8.0.0-rc2, llvmorg-8.0.0-rc1, llvmorg-7.0.1, llvmorg-7.0.1-rc3 |
|
#
52a50395 |
| 07-Dec-2018 |
Roger Ferrer Ibanez <rofirrim@gmail.com> |
[utils] Use operator "in" instead of bound function "has_key"
has_key has been removed in Python 3. The in comparison operator can be used instead.
Differential Revision: https://reviews.llvm.org/D
[utils] Use operator "in" instead of bound function "has_key"
has_key has been removed in Python 3. The in comparison operator can be used instead.
Differential Revision: https://reviews.llvm.org/D55310
llvm-svn: 348576
show more ...
|
Revision tags: llvmorg-7.0.1-rc2, llvmorg-7.0.1-rc1, llvmorg-7.0.0, llvmorg-7.0.0-rc3, llvmorg-7.0.0-rc2, llvmorg-7.0.0-rc1, llvmorg-6.0.1, llvmorg-6.0.1-rc3, llvmorg-6.0.1-rc2 |
|
#
ee769444 |
| 01-Jun-2018 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[Utils][X86] Help update_llc_test_checks.py to recognise retl/retq to reduce CHECK duplication (PR35003)
This patch replaces the --x86_extra_scrub command line argument to automatically support a se
[Utils][X86] Help update_llc_test_checks.py to recognise retl/retq to reduce CHECK duplication (PR35003)
This patch replaces the --x86_extra_scrub command line argument to automatically support a second level of regex-scrubbing if it improves the matching of nearly-identical code patterns. The argument '--extra_scrub' is there now to force extra matching if required.
This is mostly useful to help us share 32-bit/64-bit x86 vector tests which only differs by retl/retq instructions, but any scrubber can now technically support this, meaning test checks don't have to be needlessly obfuscated.
I've updated some of the existing checks that had been manually run with --x86_extra_scrub, to demonstrate the extra "ret{{[l|q]}}" scrub now only happens when useful, and re-run the sse42-intrinsics file to show extra matches - most sse/avx intrinsics files should be able to now share 32/64 checks.
Tested with the opt/analysis scripts as well which share common code - AFAICT the other update scripts use their own versions.
Differential Revision: https://reviews.llvm.org/D47485
llvm-svn: 333749
show more ...
|
Revision tags: llvmorg-6.0.1-rc1 |
|
#
5334a2c5 |
| 06-Apr-2018 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[UpdateTestChecks] Add update_analyze_test_checks.py for cost model analysis generation
The script allows the auto-generation of checks for cost model tests to speed up their creation and help impro
[UpdateTestChecks] Add update_analyze_test_checks.py for cost model analysis generation
The script allows the auto-generation of checks for cost model tests to speed up their creation and help improve coverage, which will help a lot with PR36550.
If the need arises we can add support for other analyze passes as well, but the cost models was the one I needed to get done - at the moment it just warns that any other analysis mode is unsupported.
I've regenerated a couple of x86 test files to show the effect.
Differential Revision: https://reviews.llvm.org/D45272
llvm-svn: 329390
show more ...
|
#
82962298 |
| 05-Apr-2018 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[UpdateTestChecks] Moved core functionality of add_asm_checks into add_checks
As discussed on D45272
llvm-svn: 329270
|