[LLVMdev] Problem While Running Test Suite

Duncan Sands baldrick at free.fr
Sun Feb 19 02:10:25 PST 2012


Hi Arnamoy, it used to be quite easy to set up the testsuite to test dragonegg,
but unfortunately some cleanups to the testsuite configure logic had the sad
side effect of making this more work than it used to be.  I suggest you do it
as follows:

(1) create a directory XYZ/bin/ containing the following scripts:
llvm-g++:
   #!/bin/sh
   exec g++-4.6 -fplugin=path_to_plugin/dragonegg.so "$@"


llvm-gcc:
   #!/bin/sh
   exec gcc-4.6 -fplugin=path_to_plugin/dragonegg.so "$@"

Don't forget to make the llvm-gcc and llvm-g++ scripts executable.  Of course
you should replace gcc-4.6 with whatever gcc you built the plugin for.

(2) configure LLVM with:
   --with-llvmcc=llvm-gcc --with-llvmgccdir=path/XYZ/

Then the configure script will look in path/XYZ/bin/ for llvm-gcc and also
llvm-g++, and use those for building the testsuite.

I hope this solves your problem.

Ciao, Duncan.


> I was able to build and install llvm(3.0) under Ubuntu 11.10 (using the
> ./configure script found under llvm source, and then make and make install).
>   While configuring, I gave --prefix as a directory where I would like llvm to
> be installed.  I did not give --with-llvmgccdir and the --enable-optimized
> argument to configure.  Because 3.0 doesn't come with llvmgcc source/binaries
> and I decided upon using the compatible version of dragon egg.
>
> While making dragon egg, I updated the makefile in the
> line LLVM_CONFIG?=/home/arnie/llvm/llvm-install/bin/llvm-config (llvm was
> installed inside llvm-install directory).  It successfully produced the dragon
> egg .so file.  Using this .so file I was able to compile simple c programs and
> manipulate them.
>
> The problem came when I am trying to compile test-suite.  I downloaded the
> test-suite into the <llvm source>/projects directory and then reconfigured in
> the same above said way (without --enable-optimized and --with-llvmgccdir, but I
> gave --prefix just like before).  Then I did a make and make install again (as
> if I don't do it, I was getting some error while compiling simple files).  This
> created a test-suite inside the <llvm object>/projects directory.  I went inside
> that directory and ran "make".
>
> After that I tried to run the following commands.
> gmake TEST=nightly report
> gmake TEST=libcalls report
>
> But I got unexpected outputs.  The outputs are attached with this email.
>
> *Part of the report .txt file for nightly*
>
> Program                                                                  | GCCAS
> Bytecode LLC compile LLC-BETA compile JIT codegen | GCC     CBE LLC LLC-BETA JIT
> | GCC/CBE GCC/LLC GCC/LLC-BETA LLC/LLC-BETA
> MultiSource/Applications/Burg/burg                                       | *
> *        *           *                *           |  0.0000 *   *   *        *
> | n/a     n/a     n/a          n/a
> MultiSource/Applications/ClamAV/clamscan                                 | *
> *        *           *                *           |  0.1900 *
>
> *And the raw file for nightly contains the following messages - *
>
> ---------------------------------------------------------------
>  >>> =========
> '/home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod'
> Program
> ---------------------------------------------------------------
>
> TEST-RESULT-nat-time: program 0.060000
>
> TEST-FAIL: llc
> /home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod
>
> TEST-FAIL: compile
> /home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod
>
> TEST-FAIL: jit
> /home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod
>
> TEST-FAIL: compile
> /home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod
>
> *Part of the report .txt file for libcalls*
>
> Name                                                                     | total
> | #exit |
> MultiSource/Applications/JM/ldecod/ldecod                | *     | *     |
> MultiSource/Applications/JM/lencod/lencod                | *     | *     |
> MultiSource/Applications/sqlite3/sqlite3                      | *     | *     |
> MultiSource/Applications/SIBsim4/SIBsim4                | *     | *     |
> MultiSource/Applications/siod/siod                             | *     | *     |
>
> *And the raw file for libcalls contains all the messages like this - *
> ---------------------------------------------------------------
>  >>> =========
> '/home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/ldecod/ldecod'
> Program
> ---------------------------------------------------------------
> opt: Unknown command line argument '-debug-only=simplify-libcalls'.  Try:
> '/home/arnie/llvm/llvm-obj/Release/bin/opt -help'
> opt: Did you mean '-debug-pass=simplify-libcalls'?
> ---------------------------------------------------------------
>  >>> =========
> '/home/arnie/llvm/llvm-obj/projects/test-suite/MultiSource/Applications/JM/lencod/lencod'
> Program
> ---------------------------------------------------------------
> opt: Unknown command line argument '-debug-only=simplify-libcalls'.  Try:
> '/home/arnie/llvm/llvm-obj/Release/bin/opt -help'
> opt: Did you mean '-debug-pass=simplify-libcalls'?
> ---------------------------------------------------------------
>
> Any response will be highly appreciated.
> --
> Arnamoy Bhattacharyya
> Athabasca Hall 143
> Department of Computing Science - University of Alberta
> Edmonton, Alberta, Canada, T6G 2E8
> 780-680-7073
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list