Convert the uses of '|&' to use '2>&1 |' instead, which works on old
versions of Bash. In addition, I can back out the change to the lit
built-in shell test runner to support this.

This should fix the majority of fallout on Darwin, but I suspect there
will be a few straggling issues.

llvm-svn: 159544
diff --git a/llvm/test/Transforms/MergeFunc/phi-speculation1.ll b/llvm/test/Transforms/MergeFunc/phi-speculation1.ll
index 7b2a2fe..d05d028 100644
--- a/llvm/test/Transforms/MergeFunc/phi-speculation1.ll
+++ b/llvm/test/Transforms/MergeFunc/phi-speculation1.ll
@@ -1,4 +1,4 @@
-; RUN: opt < %s -mergefunc -stats -disable-output |& not grep {functions merged}
+; RUN: opt < %s -mergefunc -stats -disable-output 2>&1 | not grep {functions merged}
 
 define i32 @foo1(i32 %x) {
 entry: