I've just tried "make check" on a fresh checkout of llvm and clang. I get:
These tests are actually testing llvm-gcc, not llvm. You can almost certainly get them to pass by building llvm-gcc and keeping it up to date. If you don't want to do that, you can configure using --without-llvm-gcc as Daniel suggested.
People often react to discovering this behavior by suggesting gently that llvm-gcc tests belong in llvm-gcc, not in llvm. So far no one has been inspired to do the work of moving them, however. The test harnesses are sufficiently different that this is not trivial.
********************
FAIL: LLVM :: Transforms/ScalarRepl/vector_promote.ll (7914 of 8396)
******************** TEST 'LLVM ::
Transforms/ScalarRepl/vector_promote.ll' FAILED ********************
Script:
--
opt < /home/jay/svn/llvm-project/llvm/trunk/test/Transforms/ScalarRepl/vector_promote.ll
-scalarrepl -S | FileCheck
/home/jay/svn/llvm-project/llvm/trunk/test/Transforms/ScalarRepl/vector_promote.ll
--
Exit Code: 1
Command Output (stderr):
--
/home/jay/svn/llvm-project/llvm/trunk/test/Transforms/ScalarRepl/vector_promote.ll:99:15:
error: expected string not found in input
; CHECK-NEXT: bitcast <2 x float> %X to i64
^
<stdin>:48:18: note: scanning from here
define i64 @test6(<2 x float> %X) {
^
<stdin>:49:9: note: possible intended match here
%tmp = bitcast <2 x float> %X to <1 x i64> ; <<1 x i64>> [#uses=1]
^
--
Is this the "disaster" of which Daniel spake?
I don't think so, llvm-gcc is not involved at all in running that test. This looks more like you're picking up an old version of "opt" somehow. The output for this test changed about a month ago and the result you're getting is consistent with what it looked like before the change.
I configured llvm --with-llvmgcc=.../install/llvm-gcc. In that same
install directory was an old binary of "opt" which I had carelessly
left there from another install ages ago.
"make check" seems to use any "opt" which it happens to find in the
same directory as llvm-gcc, in preference to the "opt" which you have
just built, which seems a bit unfriendly.