[LLVMdev] Circular dependencies
Reid Spencer
reid at x10sys.com
Tue Mar 21 16:14:50 PST 2006
Hi Eric,
Its definitely amusing :)
About the only thing I can suggest are:
1. Combine LLVMSparc*.o into one LLVMSparc.a. That work is already
happening with the new Sparc backend that is being developed. Should be
out in 1.7 (Chris?)
2. Combine the JIT/Interpreter/ExecutionEngine into one .a
I don't know enough about the codegen/target/analysis/ipa stuff to be
able to make any suggestions. Perhaps Chris can shed some light.
Reid.
On Tue, 2006-03-21 at 18:29 -0500, Eric Kidd wrote:
> Reid added some nice inter-library dependency data to utils/llvm-
> config/LibDeps.txt.
>
> There are three sets of circular dependencies between LLVM libraries.
> If you use any library from one of these sets, you may need to pull
> in the rest:
>
> LLVMCodeGen.o LLVMSelectionDAG.o libLLVMAnalysis.a libLLVMTarget.a
> libLLVMTransformUtils.a libLLVMipa.a
>
> LLVMSparcV9.o LLVMSparcV9InstrSched.o LLVMSparcV9ModuloSched.o
> LLVMSparcV9RegAlloc.o
>
> LLVMExecutionEngine.o LLVMInterpreter.o LLVMJIT.o
>
> The first set is the most problematic: It includes four *.a files,
> which means that certain linkers will tend to get confused unless you
> repeat '-l' flags.
>
> The odd entry here is libLLVMipa.a, which gets pulled in by something
> in libLLVMTransformUtils.a, but which doesn't often seem to be needed
> in practice.
>
> The third set is also a bit surprising: You always need to link in an
> interpreter, even when you have a perfectly good JIT.
>
> I hope this information amuses or informs someone. :-)
>
> Cheers,
> Eric
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060321/16e61488/attachment.sig>
More information about the llvm-dev
mailing list