summaryrefslogtreecommitdiffstats
path: root/llvm/utils/lit/tests/Inputs
diff options
context:
space:
mode:
authorJoel E. Denny <jdenny.ornl@gmail.com>2019-10-10 17:39:24 +0000
committerJoel E. Denny <jdenny.ornl@gmail.com>2019-10-10 17:39:24 +0000
commitdf35ec8289eec85e9a551578b1b7ae35b214860f (patch)
treef617fcc78ed63c36fc8e314971527087cb3c2b95 /llvm/utils/lit/tests/Inputs
parentc2cd2d40aa2e657c4f7bf0bac2594c9ea9611f43 (diff)
downloadbcm5719-llvm-df35ec8289eec85e9a551578b1b7ae35b214860f.tar.gz
bcm5719-llvm-df35ec8289eec85e9a551578b1b7ae35b214860f.zip
[lit] Make internal diff work in pipelines
When using lit's internal shell, RUN lines like the following accidentally execute an external `diff` instead of lit's internal `diff`: ``` # RUN: program | diff file - # RUN: not diff file1 file2 | FileCheck %s ``` Such cases exist now, in `clang/test/Analysis` for example. We are preparing patches to ensure lit's internal `diff` is called in such cases, which will then fail because lit's internal `diff` cannot currently be used in pipelines and doesn't recognize `-` as a command-line option. To enable pipelines, this patch moves lit's `diff` implementation into an out-of-process script, similar to lit's `cat` implementation. A follow-up patch will implement `-` to mean stdin. Reviewed By: probinson, stella.stamenova Differential Revision: https://reviews.llvm.org/D66574 llvm-svn: 374388
Diffstat (limited to 'llvm/utils/lit/tests/Inputs')
-rw-r--r--llvm/utils/lit/tests/Inputs/shtest-shell/diff-error-0.txt3
-rw-r--r--llvm/utils/lit/tests/Inputs/shtest-shell/diff-pipes.txt15
2 files changed, 15 insertions, 3 deletions
diff --git a/llvm/utils/lit/tests/Inputs/shtest-shell/diff-error-0.txt b/llvm/utils/lit/tests/Inputs/shtest-shell/diff-error-0.txt
deleted file mode 100644
index 81888cf8197..00000000000
--- a/llvm/utils/lit/tests/Inputs/shtest-shell/diff-error-0.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-# Check error on a unsupported diff (cannot be part of a pipeline).
-#
-# RUN: diff diff-error-0.txt diff-error-0.txt | echo Output
diff --git a/llvm/utils/lit/tests/Inputs/shtest-shell/diff-pipes.txt b/llvm/utils/lit/tests/Inputs/shtest-shell/diff-pipes.txt
new file mode 100644
index 00000000000..ce0abca1661
--- /dev/null
+++ b/llvm/utils/lit/tests/Inputs/shtest-shell/diff-pipes.txt
@@ -0,0 +1,15 @@
+# RUN: echo foo > %t.foo
+# RUN: echo bar > %t.bar
+
+# Check output pipe.
+# RUN: diff %t.foo %t.foo | FileCheck -allow-empty -check-prefix=EMPTY %s
+# RUN: diff -u %t.foo %t.bar | FileCheck %s && false || true
+
+# Fail so lit will print output.
+# RUN: false
+
+# CHECK: @@
+# CHECK-NEXT: -foo
+# CHECK-NEXT: +bar
+
+# EMPTY-NOT: {{.}}
OpenPOWER on IntegriCloud