[mlir] Fix test failure with invalid piping syntax on old bash

Using '|&' syntax for piping both stdout and stderr is not supported by older bash. macOS pre-installs 3.2.57 as of today, and it causes test failure due to unexpected token '&'. We can use '2>&1' instead to make it compatible as much as possible.

```
******************** TEST 'MLIR :: mlir-cpu-runner/invalid.mlir' FAILED ********************
Script:
--
: 'RUN: at line 1';   not mlir-cpu-runner --no-implicit-module llvm-project/mlir/test/mlir-cpu-runner/invalid.mlir |& llvm-project/build/bin/FileCheck llvm-project/mlir/test/mlir-cpu-runner/invalid.mlir
--
Exit Code: 2

Command Output (stderr):
--
mlir-cpu-runner/Output/invalid.mlir.script: line 1: syntax error near unexpected token `&'
/mlir-cpu-runner/Output/invalid.mlir.script: line 1: `set -o pipefail;{ : 'RUN: at line 1';   not mlir-cpu-runner --no-implicit-module llvm-project/mlir/test/mlir-cpu-runner/invalid.mlir |& llvm-project/build/bin/FileCheck llvm-project/mlir/test/mlir-cpu-runner/invalid.mlir; }'
```

Reference: https://stackoverflow.com/questions/35384999/what-does-mean-in-bash

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D135347
This commit is contained in:
Kai Sasaki 2022-10-07 09:29:36 +09:00
parent b924c8c71d
commit b03f439611
2 changed files with 3 additions and 3 deletions

View File

@ -1,4 +1,4 @@
// RUN: not mlir-cpu-runner --no-implicit-module %s |& FileCheck %s
// RUN: not mlir-cpu-runner --no-implicit-module %s 2>&1 | FileCheck %s
// CHECK: Error: top-level op must be a symbol table.
llvm.func @main()

View File

@ -1,6 +1,6 @@
// UNSUPPORTED: system-windows
// RUN: not mlir-reduce -opt-reduction-pass --no-implicit-module %s |& FileCheck %s --check-prefix=CHECK-PASS
// RUN: not mlir-reduce -reduction-tree --no-implicit-module %s |& FileCheck %s --check-prefix=CHECK-TREE
// RUN: not mlir-reduce -opt-reduction-pass --no-implicit-module %s 2>&1 | FileCheck %s --check-prefix=CHECK-PASS
// RUN: not mlir-reduce -reduction-tree --no-implicit-module %s 2>&1 | FileCheck %s --check-prefix=CHECK-TREE
// The reduction passes are currently restricted to 'builtin.module'.
// CHECK-PASS: error: Can't add pass '{{.+}}' restricted to 'builtin.module' on a PassManager intended to run on 'func.func'