Created attachment 75423 [details] [review] My patch I'm using Mesa 9.0.3 on Linux, built with automake. llvmpipe uses llvm::JITEventListener::createOProfileJITEventListener if LLVM was compiled with OProfile support, so it needs to link with libLLVMOProfileJIT -- i.e. include oprofilejit in the list of LLVM components required in configure.ac, if it exists. There's already a similar test for mcjit; duplicating this for oprofilejit works for me. Patch to this effect attached, but you may prefer a different fix. Without this, I get the following link error: gmake[5]: Entering directory `/src/x11/mesa/work/Mesa-9.0.3/src/gallium/drivers/llvmpipe' g++ -Wl,-O2 -Wl,--as-needed -Wl,-O2 -Wl,--as-needed -L/gar/packages/llvm-3.2/lib -lbfd -lpthread -ldl -lm -lopagent -L/gar/lib/oprofile -Wl,-rpath,/gar/lib/oprofile lp_test_format.o lp_test_main.o -o lp_test_format -Wl,--start-group -L../../auxiliary/ -lgallium libllvmpipe.a -lLLVMMCJIT -lLLVMBitWriter -lLLVMX86Disassembler -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMX86AsmParser -lLLVMMCParser -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMJIT -lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport -L/gar/lib -lXext -lXdamage -lXfixes -lX11-xcb -lX11 -lxcb-glx -lxcb -lXxf86vm -L/gar/lib -ldrm -lm -lpthread -ldl -Wl,--end-group ../../auxiliary//libgallium.a(lp_bld_misc.o): In function `lp_register_oprofile_jit_event_listener': lp_bld_misc.cpp:(.text+0x1c): undefined reference to `llvm::JITEventListener::createOProfileJITEventListener()' collect2: error: ld returned 1 exit status gmake[5]: *** [lp_test_format] Error 1 gmake[5]: Leaving directory `/src/x11/mesa/work/Mesa-9.0.3/src/gallium/drivers/llvmpipe' I guess this error doesn't show up for people who've got LLVM built as one large library, which isn't the default configuration.
Commited. Thanks. commit 2506b035031d6022fec0465bffac8eedd43de0f9 Author: Adam Sampson <ats-fd@offog.org> Date: Thu Feb 28 15:35:11 2013 +0000 autotools: oprofilejit should be included in the list of LLVM components required NOTE: This is a candidate for the stable branch. Signed-off-by: José Fonseca <jfonseca@vmware.com>
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.