problems running test suite (-mllvm -disable-llvm-optzns)

I'm trying to run some of the test suite using the instructions here:

http://llvm.org/docs/TestingGuide.html#quicktestsuite

I've built llvm myself, but I'm using pre-built binaries of llvm-gcc
(from http://llvm.org/prereleases/2.5/llvm-gcc4.2-2.5-x86-linux-RHEL4.tar.gz).

Here's what happens:

foad@debian:~/svn/llvm-project/test-suite/trunk$ ./configure
--with-llvmgccdir=/home/foad/llvm/llvm-gcc4.2-2.5-x86-linux-RHEL4
--with-llvmobj=/home/foad/llvm/objdir-svn
--with-llvmsrc=/home/foad/svn/llvm-project/llvm/trunk
[...]
foad@debian:~/svn/llvm-project/test-suite/trunk$ make -C
MultiSource/Applications/minisat/
make: Entering directory
`/home/foad/svn/llvm-project/test-suite/trunk/MultiSource/Applications/minisat'
Compiling Main.cpp to Output/Main.bc
cc1plus: warning: unrecognized gcc debugging option: i
cc1plus: warning: unrecognized gcc debugging option: s
cc1plus: warning: unrecognized gcc debugging option: b
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: e
cc1plus: warning: unrecognized gcc debugging option: -
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: m
cc1plus: warning: unrecognized gcc debugging option: -
cc1plus: warning: unrecognized gcc debugging option: o
cc1plus: warning: unrecognized gcc debugging option: t
cc1plus: warning: unrecognized gcc debugging option: z
cc1plus: warning: unrecognized gcc debugging option: n
cc1plus: warning: unrecognized gcc debugging option: s
cc1plus: Unknown command line argument '-mtune=generic'. Try: 'cc1plus --help'
make: [Output/Main.bc] Error 1 (ignored)
Compiling Solver.cpp to Output/Solver.bc
cc1plus: warning: unrecognized gcc debugging option: i
cc1plus: warning: unrecognized gcc debugging option: s
cc1plus: warning: unrecognized gcc debugging option: b
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: e
cc1plus: warning: unrecognized gcc debugging option: -
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: l
cc1plus: warning: unrecognized gcc debugging option: m
cc1plus: warning: unrecognized gcc debugging option: -
cc1plus: warning: unrecognized gcc debugging option: o
cc1plus: warning: unrecognized gcc debugging option: t
cc1plus: warning: unrecognized gcc debugging option: z
cc1plus: warning: unrecognized gcc debugging option: n
cc1plus: warning: unrecognized gcc debugging option: s
cc1plus: Unknown command line argument '-mtune=generic'. Try: 'cc1plus --help'
make: [Output/Solver.bc] Error 1 (ignored)
/home/foad/llvm/objdir-svn/Debug/bin/llvm-ld -link-as-library
-disable-opt Output/Main.bc Output/Solver.bc -o
Output/minisat.linked.rbc
llvm-ld: error: Cannot find linker input 'Output/Main.bc'
make: [Output/minisat.linked.rbc] Error 1 (ignored)
/home/foad/llvm/objdir-svn/Debug/bin/opt -std-compile-opts
-info-output-file=/home/foad/svn/llvm-project/test-suite/trunk/MultiSource/Applications/minisat/Output/minisat.linked.bc.info
-stats -time-passes Output/minisat.linked.rbc -o
Output/minisat.linked.bc -f
/home/foad/llvm/objdir-svn/Debug/bin/opt: could not open file
make: [Output/minisat.linked.bc] Error 1 (ignored)
[... lots more errors like this ...]

I guess this is because the test suite is trying to run "llvm-gcc
-mllvm -disable-llvm-optzns", which never seems to work, because
llvm-gcc mangles the command line before it gets to cc1plus.

Is it just me having this problem?

How can I fix it?

Thanks,
Jay.

Hi,

I'm trying to run some of the test suite using the instructions here:

http://llvm.org/docs/TestingGuide.html#quicktestsuite

I've built llvm myself, but I'm using pre-built binaries of llvm-gcc
(from http://llvm.org/prereleases/2.5/llvm-gcc4.2-2.5-x86-linux-RHEL4.tar.gz).

Here's what happens:

the llvm testsuite (from svn, right?) uses features that are not
available in the 2.5 prerelease candidate. Use the prerelease
version of llvm too.

Ciao,

Duncan.

Hello, Jay

I guess this is because the test suite is trying to run "llvm-gcc
-mllvm -disable-llvm-optzns", which never seems to work, because
llvm-gcc mangles the command line before it gets to cc1plus.

That's correct. The driver changes the order of the options provided.
You need to provided this option to cc1 / cc1plus directly

Is it just me having this problem?

No.

How can I fix it?

No idea, but I guess you can either hack on gcc specs. Or don't use
this option at all - this is intended only for internal debugging
purposes, so I doubt anyone will be really interested in fixing this.

Hi,

> I guess this is because the test suite is trying to run "llvm-gcc
> -mllvm -disable-llvm-optzns", which never seems to work, because
> llvm-gcc mangles the command line before it gets to cc1plus.
That's correct. The driver changes the order of the options provided.
You need to provided this option to cc1 / cc1plus directly

Dan fixed this recently in svn IIRC - I don't think it's in the
prerelease candidate.

> Is it just me having this problem?
No.

Yes :slight_smile:

> How can I fix it?
No idea, but I guess you can either hack on gcc specs. Or don't use
this option at all - this is intended only for internal debugging
purposes, so I doubt anyone will be really interested in fixing this.

Ciao,

Duncan.

I'm trying to run some of the test suite using the instructions here:

http://llvm.org/docs/TestingGuide.html#quicktestsuite

I've built llvm myself, but I'm using pre-built binaries of llvm-gcc
(from http://llvm.org/prereleases/2.5/llvm-gcc4.2-2.5-x86-linux-RHEL4.tar.gz).

Here's what happens:

the llvm testsuite (from svn, right?) uses features that are not
available in the 2.5 prerelease candidate. Use the prerelease
version of llvm too.

Thanks. I switched to using the testsuite from the prerelease
candidate and I've got it working now.

For the record, there was another problem that frustrated me: the
testsuite couldn't find cc1plus, because when I configured llvm I
hadn't specified --with-llvmgccdir, so llvm's Makefile.config didn't
define LLVMGCCLIBEXEC. But when I configured the testsuite I *had*
specified --with-llvmgccdir, so it had all the information it needed
to find llvm-gcc.

Thanks,
Jay.

Yes. Until recently -mllvm-disable-llvm-optzns only accidentally
worked on Darwin. It should be generally usable in trunk.

If you're testing the 2.5 branch, please use the 2.5 branch of the test-suite.

Dan