1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/utils
Joel E. Denny f717458fdf [FileCheck] Support comment directives
Sometimes you want to disable a FileCheck directive without removing
it entirely, or you want to write comments that mention a directive by
name.  The `COM:` directive makes it easy to do this.  For example,
you might have:

```
; X32: pinsrd_1:
; X32:    pinsrd $1, 4(%esp), %xmm0

; COM: FIXME: X64 isn't working correctly yet for this part of codegen, but
; COM: X64 will have something similar to X32:
; COM:
; COM:   X64: pinsrd_1:
; COM:   X64:    pinsrd $1, %edi, %xmm0
```

Without this patch, you need to use some combination of rewording and
directive syntax mangling to prevent FileCheck from recognizing the
commented occurrences of `X32:` and `X64:` above as directives.
Moreover, FileCheck diagnostics have been proposed that might complain
about the occurrences of `X64` that don't have the trailing `:`
because they look like directive typos:

  <http://lists.llvm.org/pipermail/llvm-dev/2020-April/140610.html>

I think dodging all these problems can prove tedious for test authors,
and directive syntax mangling already makes the purpose of existing
test code unclear.  `COM:` can avoid all these problems.

This patch also updates the small set of existing tests that define
`COM` as a check prefix:

- clang/test/CodeGen/default-address-space.c
- clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
- clang/test/Driver/hip-device-libs.hip
- llvm/test/Assembler/drop-debug-info-nonzero-alloca.ll

I think lit should support `COM:` as well.  Perhaps `clang -verify`
should too.

Reviewed By: jhenderson, thopre

Differential Revision: https://reviews.llvm.org/D79276
2020-05-13 11:29:48 -04:00
..
benchmark
bugpoint
count
crosstool
docker
emacs
FileCheck [FileCheck] Support comment directives 2020-05-13 11:29:48 -04:00
fpcmp
gdb-scripts
gn [gn build] Use relative paths in generated lit.site.cfg.py files for llvm and clang. 2020-05-11 20:58:45 -04:00
jedit
kate
KillTheDoctor
lint
lit [lit] Create one output file when --output is specified more than once 2020-05-04 21:36:20 -07:00
llvm-build
llvm-lit llvm-lit.in: Use a raw string for LLVM_SOURCE_DIR 2020-05-11 19:05:53 -04:00
llvm-locstats [llvm-dwarfdump][Stats] Clean up 2020-05-04 09:35:40 +02:00
LLVMVisualizers
Misc
not
PerfectShuffle
release
Reviewing
sanitizers
TableGen [TableGen] Fix register class handling in TableGen's DAG ISel Matcher Generator 2020-05-13 10:17:03 +01:00
Target/ARM
testgen
textmate
unittest
UpdateTestChecks [UpdateTestChecks] Make generation of UTC_ARGS: comment more robust 2020-04-23 13:12:27 +01:00
valgrind
vim
vscode
yaml-bench
abtest.py
add_argument_names.py
bisect
bisect-skip-count
bugpoint_gisel_reducer.py
check-each-file
chunk-print-before-all.py
clang-parse-diagnostics-file
codegen-diff
collect_and_build_with_pgo.py
countloc.sh
create_ladder_graph.py
demangle_tree.py
DSAclean.py
DSAextract.py
extract_symbols.py [AIX] Make sure we use export lists for plugins 2020-05-08 14:00:25 -04:00
extract_vplan.py
findmisopt
findoptdiff
findsym.pl
GenLibDeps.pl
GetSourceVersion
getsrcs.sh
indirect_calls.py
lldbDataFormatters.py
llvm-compilers-check
llvm-gisel-cov.py
llvm-native-gxx
llvm.grm
LLVMBuild.txt
llvmdo
llvmgrep
prepare-code-coverage-artifact.py
schedcover.py
shuffle_fuzz.py
shuffle_select_fuzz_tester.py
sort_includes.py
unicode-case-fold.py
update_analyze_test_checks.py
update_cc_test_checks.py
update_llc_test_checks.py
update_mca_test_checks.py
update_mir_test_checks.py
update_test_checks.py
UpdateCMakeLists.pl
wciia.py