[PATCH] D42805: [utils] Refactor utils/update_{, llc_}test_checks.py to share more code
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 2 11:23:28 PST 2018
spatel added a comment.
In https://reviews.llvm.org/D42805#996490, @MaskRay wrote:
> If you prefer different scripts for different purposes:
>
> utils/update_opt_test_checks.py input: LLVM IR ; CHECK lines: LLVM IR
> utils/update_llc_test_checks.py input: LLVM IR ; CHECK lines: assembly
> utils/update_cc_test_checks.py input: C/C++/ObjC/.. ; CHECK lines: assembly or LLVM IR
>
>
> If you did not mind merging `update_test_checks.py` and `update_llc_test_checks.py`, we could rename and merge these scripts by their input format:
>
> utils/update_ir_test_checks.py input: LLVM IR ; CHECK lines: assembly or LLVM IR
> utils/update_cc_test_checks.py input: LLVM IR ; CHECK lines: assembly or LLVM IR
>
>
> Instead of just script name on the `ADVERT` line, we could also put an extra option to indicate its usage e.g.:
>
> ; NOTE: Assertions have been autogenerated by utils/update_ir_test_checks.py --llc
> ; NOTE: Assertions have been autogenerated by utils/update_ir_test_checks.py --opt
>
>
> `--llc` and `--opt` restrict the script to update `; RUN` lines that use the two tools, respectively. By merging the two scripts, we can reduce more boilerplate.
>
> I can do that in another revision (after this revision and https://reviews.llvm.org/D42712 are landed)
One script with an option to choose the output format sounds good to me.
Note that we do have some regression tests where we check both IR and asm in one file, so make sure that case still works. Recent example is in https://reviews.llvm.org/D42607 - test/Transforms/LoopStrengthReduce/X86/macro-fuse-cmp.ll
Repository:
rL LLVM
https://reviews.llvm.org/D42805
More information about the llvm-commits
mailing list